创建多个变量

发布于 2021-01-29 19:36:04

我想用forPython(不是数组)中的一个创建10个变量。像这样:

for i in range(1,10,1)
    variable i = 100 / i
    print variable i

我想创建的变量名,在这种情况下: variable1variable2variable3,…,variable10 我不想一个数组

我有一个坐标图(640 x
480)。我正在确定像素颜色为白色的坐标。地面上有3个球,我想获取每个球的中心坐标,因此,如果要评估的坐标距离最后一个球很近,则x和y坐标将被平均(如果该坐标属于a)新球的坐标将属于新坐标组。

p=0
h=0
for j in range(1,480,1):
   for i in range(1,640,1):
      c=cv.Get2D(image,j,i)
      if c[0] == 255:
        old_coord X  = new_coord x
        new_coord x += [(i,j)]
        if (old_coord x - 5 < new_coord x < old_coord x + 5)
            averx x = averx x + i
            avery x = averx x + j
            count x = count x + 1
        else
            p = p + 1
            new_coord x += [(i,j)]
average(averx1 , count 1)
average(avery1 , count 1)
average(averx2 , count 2)
average(avery2 , count 2)
关注者
0
被浏览
46
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    您不应该这样做,但是如果您真的想要的话 可以

    for j in range(1,10,1):
        exec('var_%d = j'%j)
    

    我能再强调一遍 吗,你不应该这样做 ,但是我看不出有任何理由隐藏自己的能力。

    鉴于您要尝试做的事情,我将研究形态学操作。对于您要尝试执行的操作,有更好的算法。(看起来您想做的事已经在scipy示例中了)。


    引用unutbu:

    也许我应该试着说服你,有变量命名variable1variable2等是一个坏主意。由于这些变量已编号,因此它们可能彼此之间存在密切关系。也许它们都是数字。假设您想将所有这些都加一。您必须编写重复的代码,例如

    variable1 += 1
    variable2 += 1
    variable3 += 1
    ... etc
    

    代替

    for i in range(1,10,1):
        x[i] += 1
    

    或者,您可能想将所有这些变量都输入到函数中。你得写

    func(variable1, variable2, variable3, ...)
    

    代替

    func(**x)
    

    结论:给变量名称编号是很痛苦的!使用字典或列表可以避免痛苦。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看