Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:使用字符串作为变量?_Python_String_Variables - Fatal编程技术网

Python:使用字符串作为变量?

Python:使用字符串作为变量?,python,string,variables,Python,String,Variables,我想编写一个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":"

我想编写一个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)
number=0
而(数量<10):
数字=数字+1
字典编号=(“D”+str(编号))#创建字典名称(D1、D2、D3、D4、D5、D6、D7、D8、D9、D10)
var(dictionarynumber)={“水果”:“苹果”,“书”:“奥利弗·特维斯”,“建筑”:“白宫”}#当然var()不起作用,但我把它放在这里是为了让大家明白我的观点
打印(字典编号)

答覆如下:

我喜欢关于字典的想法,去掉不需要的“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'}}
dict={}
n=0
而(n<10):
n=n+1
d=n
d={“键”:“信息”}
dict[n]=d
打印(dict)
#输出=
#{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'}

如果你想给每本字典起一个名字,就把它们放在字典里

dicts = {}
# dict_list = []
for i in xrange(10):
    dictionary_key = ('d{0}'.format(i))
    dict_item = {"Fruit":"Apple","Book":"Oliver Twist","Building":"White House"}
    dicts[dictionary_key] = dict_item
    # dict_list.append(dict_item)

如果你不想给你的字典起名字,把它们放在一个列表里。

如果你想给每本字典起名字,把它们放在字典里

dicts = {}
# dict_list = []
for i in xrange(10):
    dictionary_key = ('d{0}'.format(i))
    dict_item = {"Fruit":"Apple","Book":"Oliver Twist","Building":"White House"}
    dicts[dictionary_key] = dict_item
    # dict_list.append(dict_item)

如果您不想为字典命名,请将它们列在一个列表中。

您似乎在尝试创建混合数据类型,但我不清楚您想要什么样的结构,因此我将给您两个答案,希望其中一个是正确的

首先,如果您试图创建一组词典并将其打印出来,您可以这样做:

diclist = [{"Fruit":"Apple"},{"Book":"Oliver Twist"},{"Building":"White House"}]
print(diclist[1])
print(listDic['Fruit'])
第二,按照你给出的例子,你的目标可能是创建一个列表字典。比如说

listDic = {'Fruit':['Apples', 'Bannanas', 'Durian'], 'Book':['Oliver Twist','Flashman', 'Catch 22']}
print (listDic)
您可以这样访问它:

diclist = [{"Fruit":"Apple"},{"Book":"Oliver Twist"},{"Building":"White House"}]
print(diclist[1])
print(listDic['Fruit'])
会导致

[‘苹果’、‘香蕉’、‘榴莲’]

还有这个 打印(listDic['Fruit'][1]) 会导致

班纳纳斯


如果我没有找到您想要的答案,或者您想要更多的细节,请发表评论。

您似乎在尝试创建混合数据类型,但我不清楚您想要什么样的结构,因此我将给您两个答案,希望其中一个是正确的

首先,如果您试图创建一组词典并将其打印出来,您可以这样做:

diclist = [{"Fruit":"Apple"},{"Book":"Oliver Twist"},{"Building":"White House"}]
print(diclist[1])
print(listDic['Fruit'])
第二,按照你给出的例子,你的目标可能是创建一个列表字典。比如说

listDic = {'Fruit':['Apples', 'Bannanas', 'Durian'], 'Book':['Oliver Twist','Flashman', 'Catch 22']}
print (listDic)
您可以这样访问它:

diclist = [{"Fruit":"Apple"},{"Book":"Oliver Twist"},{"Building":"White House"}]
print(diclist[1])
print(listDic['Fruit'])
会导致

[‘苹果’、‘香蕉’、‘榴莲’]

还有这个 打印(listDic['Fruit'][1]) 会导致

班纳纳斯


如果我没有找到你想要的答案,或者你想知道更多的细节,就写下评论。

使用列表(在索引器中去掉“D”)或其他字典。你以后会感谢你自己的。或者使用字典——一个计算过的键仍然比一个计算机名好——如果你想能够随意命名它们,而不仅仅是用序列号。你的
number
循环应该是:
for number in range(1,11):
是的,你可能会对字典发疯。(
{1:{'a':{'i':1,'ii':2),'b':3},2:4,3:{'knight':'ni','parrot':None}}
只是不要尝试使用字典作为键。使用列表(在索引器中去掉“D”)或另一本字典。你以后会感谢你自己的。或者使用一本字典字典——一个计算键仍然比一个计算机名更好——如果你想能够随意命名它们,而不仅仅是用序列号。你的
number
循环应该改为:
for number in range(1,11)是的,你可能会对字典发疯。(
{1:{'a':{'i':1,'ii':2),'b':3},2:4,3:{'knight':'ni','parrot':None}}}
只是不要试图用字典作为钥匙。一本空白字典,我不知道你能做到。这似乎是个好主意。一本空白字典,我不知道你能做到。这似乎是个好主意。