这是dict:
sozluk_ata = {20225: 17, 20232: 9, 20233: 22, 20234: 3, 20235: 28, 20236: 69, ..}
这是我的代码,用于获取字典中元素的值。
ders_adi_entry_1 = entry_1.get()
ders_crn_entry_1 = int(entry_11.get())
y1 = "sozluk_%s[%d]" %(ders_adi_entry_1, ders_crn_entry_1)
print (y1)
这给了我sozluk_ata[20225]
,而不是值17
。
答案 0 :(得分:2)
如果你只想要你的dict的值,请使用像:
这样的思考sozluk_ata = {20225: 17, 20232: 9, 20233: 22, 20234: 3, 20235: 28, 20236: 69}
for key in sozluk_ata:
print(key, sozluk_ata[key])
打印:
20225 17
20232 9
20233 22
20234 3
20235 28
20236 69
答案 1 :(得分:2)
作为一般方法,我会建议这样的事情:
def lookup(inp):
inp = int(inp)
for d in overall:
for k,v in d.items():
if k == inp:
return v
overall = []
sozluk_ata = {20225: 17, 20232: 9, 20233: 22, 20234: 3, 20235: 28, 20236: 69}
sozluk_tur = {20374: 58, 20358: 31, 21825: 61}
sozluk_bil = {25472: 65, 25473: 69, 20866: 40}
overall.append(sozluk_ata)
overall.append(sozluk_tur)
overall.append(sozluk_bil)
inp = input('Please type in a key: ')
print(lookup(inp))
这将打印用户在询问时键入的给定键的相应值。但是,由于它使用列表overall
,我们无法判断包含所需键值对的dict。为了提供此功能,您需要类似dict而不是列表或元组列表。
不是为彼此附加不同的dicts(因此使用不同的参数调用.append()
三次),您也可以extend
列表中的列表如下:
overall.extend([sozluk_ata, sozluk_tur, sozluk_bil])
答案 2 :(得分:1)
我们的目标是搜索6-7个字典,并获取用户提供给我们的crn_adı
变量的值。 (我们也希望用户给我们搜索的字典。)
我们遇到这样的问题:
sozluk_all = {"sozluk1": {keyandvalues}, "sozluk2": {keyandvalues}}
x = input()
crn_adı = input()
y1 = "sozluk_%s"%(x)
print(sozluk_all[y1][crn_adı])
谢谢大家