【发布时间】:2016-12-18 01:45:50
【问题描述】:
我想用 Python 中的一个 for 创建 10 个变量(不是数组)。
像这样的:
for i in range(1,10,1)
variable i = 100 / i
print variable i
我想创建变量名,在这种情况下:
variable1, variable2, variable3,..., 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)
【问题讨论】:
-
不,你不想那样做。告诉我们原因,我们会告诉你你真正想要做什么。
-
这是一个常见问题,它永远不是正确的选择。为什么不想使用数组(在 Python 中通常称为列表)?
-
@Marcin:我想你心里有这样的语言?
-
如果事先知道变量的名称,为什么还要动态创建呢?之后您还必须通过它们的实际名称来引用它们。
-
顺便提一下,关于这个主题的一篇不错的博文是Keep data out of your variable names