【发布时间】:2012-04-15 04:56:45
【问题描述】:
我想编写一个 python 脚本,一次创建多个字典,然后将字典打印出来,但我不知道如何将字符串转换为变量。
number = 0
while (number < 10):
number = number + 1
dictionarynumber = ("D"+str(number)) # creates the dictionarys name(D1,D2,D3,D4,D5,D6,D7,D8,D9,D10)
var(dictionarynumber) = {"Fruit":"Apple","Book":"Oliver Twist","Building":"White House"} #Of course var() doesn't work but I placed it here to get my point across
print(dictionarynumber)
回答后:
我喜欢关于字典的想法,去掉不需要的“D”是有道理的。小伙伴们对此怎么看?
dict = {}
n = 0
while (n < 10):
n = n + 1
d = n
d = {"Key":"Information"}
dict[n] = d
print(dict)
# Output =
# {1: {'Key': 'Information'},
# 2: {'Key': 'Information'},
# 3: {'Key': 'Information'},
# 4: {'Key': 'Information'},
# 5: {'Key': 'Information'},
# 6: {'Key': 'Information'},
# 7: {'Key': 'Information'},
# 8: {'Key': 'Information'},
# 9: {'Key': 'Information'},
# 10: {'Key': 'Information'}}
【问题讨论】:
-
使用列表(在索引器中去掉“D”)或其他字典。以后你会感谢自己的。
-
如果您希望能够任意命名它们而不是仅使用序列号,则可以使用字典字典 - 计算的键仍然比计算机名称更好。
-
你的
number循环应该是:for number in range(1, 11): -
是的,你可以疯狂地使用字典。 (
{1: {'a': {'i': 1, 'ii': 2), 'b': 3}, 2: 4, 3: {'knight': 'ni', 'parrot': None}}只是不要尝试使用字典作为键。