我有这段代码
for i in range(10):
variablename = "file" + str(i)
我希望能够根据i
变量生成变量
就像范围是10会有像这样的变量
我该怎么做?
答案 0 :(得分:4)
您可以使用词典
dict = {}
for i in range(10):
dict["file" + str(i)] = "value for this var"
然后您可以使用变量名称
获取值f1 = dict["file1"]
答案 1 :(得分:1)
你可以使用包含所有全局变量字典的globals()
函数。如果您不熟悉范围或词典,我建议您阅读这两页
http://docs.python.org/2/library/stdtypes.html#typesmapping
Short Description of the Scoping Rules?
for i in range(10):
globals()["file" + str(i)] = "newvarvalue!" + str(i)
print file0
print file1
print file2
print file3
print file4
print file5
print file6
print file7
print file8
print file9
编辑从解决方案中删除了locals()
答案 2 :(得分:0)
答案 3 :(得分:-4)
您需要提供range()
两个参数才能使其正常工作,因此您应该将代码更改为:
for i in range(1,11):
variablename = "file" + str(i)