我怎样才能得到字典的关键作为variables直接在Python中(而不是从价值检索)?
对不起,这个基本的问题,但我的search没有什么比除了如何得到一个字典的密钥基于它的价值,我不愿意使用,因为我只是想要的文本/名称的密钥,并担心search按价值可能最终返回2个或更多的密钥,如果字典有很多条目…我想要做的是这样的:
mydictionary={'keyname':'somevalue'} for current in mydictionary: result = mydictionary.(some_function_to_get_key_name)[current] print result "keyname"
原因是我打印出来的文件,我想用这个键名和值
我已经看到下面的方法,但这似乎只是返回键的价值
get(key[, default])
您应该使用以下键来遍历键:
for key in mydictionary: print "key: %s , value: %s" % (key, mydictionary[key])
如果要打印键和值,请使用以下命令:
for key, value in my_dict.iteritems(): print key, value
原因是我打印出来的文件,我想用这个键名和值
基于上述要求,我build议:
keys = mydictionary.keys() keys.sort() for each in keys: print "%s: %s" % (each, mydictionary.get(each))
如果字典包含这样的一对:
d = {'age':24}
那么你可以得到
field, value = d.items()[0]
keys=[i for i in mydictionary.keys()]
or keys = list(mydictionary.keys())
就如此容易:
mydictionary={'keyname':'somevalue'} result = mydictionary.popitem()[0]
你会把你的字典和它的副本
迭代字典(i)将返回密钥,然后使用它(i)来获取值
for i in D: print "key: %s, value: %s" % (i, D[i])
对于Python 3如果你只想得到钥匙使用这个。 如果您想要的值,更换打印(键)与打印(值)。
for key,value in my_dict: print(key)
我有时做的是创build另一个字典,只是为了能够以我需要的string的forms访问。 然后我迭代多个字典匹配键来构build,例如一个第一列的表作为描述。
dict_names = {'key1': 'Text 1', 'key2': 'Text 2'} dict_values = {'key1': 0, 'key2': 1} for key, value in dict_names.items(): print('{0} {1}'.format(dict_names[key], dict_values[key])
你可以很容易地做大量的字典来匹配数据(我喜欢字典,你可以随时引用一个众所周知的关键名称)
是的,我使用字典来存储函数的结果,所以我不需要每次只调用一次就可以运行这些函数,然后随时访问结果。
编辑:在我的例子中,密钥名称并不重要(我个人喜欢使用相同的密钥名称,因为它更容易从我的任何匹配的字典中select一个值),只要确保每个字典中的密钥数量是一样