问题:如何直接在Python中获取字典键作为变量(而不是从值中搜索)?
对不起这个基本问题,但是我的搜索没有发现什么,除了如何根据其值获取字典的键外,我不希望使用它,因为我只想要键的文本/名称,并且担心搜索如果字典中有很多条目,按值排序可能最终会返回2个或更多键…我想做的是:
mydictionary={'keyname':'somevalue'}
for current in mydictionary:
result = mydictionary.(some_function_to_get_key_name)[current]
print result
"keyname"
这样做的原因是我将这些信息打印到文档中,并且在执行此操作时要使用键名和值
我看过下面的方法,但这似乎只是返回键的值
get(key[, default])
回答 0
您应该使用以下方法遍历密钥:
for key in mydictionary:
print "key: %s , value: %s" % (key, mydictionary[key])
回答 1
如果要打印键和值,请使用以下命令:
for key, value in my_dict.iteritems():
print key, value
回答 2
这样做的原因是我将这些信息打印到文档中,并且在执行此操作时要使用键名和值
基于以上要求,这是我的建议:
keys = mydictionary.keys()
keys.sort()
for each in keys:
print "%s: %s" % (each, mydictionary.get(each))
回答 3
如果字典包含这样的一对:
d = {'age':24}
那么你可以得到
field, value = d.items()[0]
对于Python 3.5,请执行以下操作:
key = list(d.keys())[0]
回答 4
keys=[i for i in mydictionary.keys()]
要么
keys = list(mydictionary.keys())
回答 5
就如此容易:
mydictionary={'keyname':'somevalue'}
result = mydictionary.popitem()[0]
您将修改字典,并应首先对其进行复制
回答 6
您可以简单地使用*
它来解开字典键。例:
d = {'x': 1, 'y': 2}
t = (*d,)
print(t) # ('x', 'y')
回答 7
遍历字典(i)将返回键,然后使用它(i)获取值
for i in D:
print "key: %s, value: %s" % (i, D[i])
回答 8
对于python 3如果只想获取密钥,请使用它。如果需要这些值,请用print(values)替换print(key)。
for key,value in my_dict:
print(key)
回答 9
有时我要做的是创建另一个字典,以便能够以我需要的方式访问任何需要作为字符串访问的字典。然后,我遍历多个字典中的匹配键,以构建例如带有第一列作为描述的表。
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])
您可以轻松地为大量的字典匹配数据(我喜欢这样的事实,使用字典,您总是可以引用众所周知的键名)
是的,我使用字典来存储函数的结果,所以我不必每次只调用一次函数就运行这些函数,然后随时访问结果。
编辑:在我的示例中,键名并不重要(我个人喜欢使用相同的键名,因为可以更轻松地从我的任何匹配字典中选择一个值),只需确保每个词典中的键数为相同
回答 10
您可以通过将dict键和值强制转换为列表来执行此操作。也可以为项目完成。
例:
f = {'one': 'police', 'two': 'oranges', 'three': 'car'}
list(f.keys())[0] = 'one'
list(f.keys())[1] = 'two'
list(f.values())[0] = 'police'
list(f.values())[1] = 'oranges'
回答 11
轻松地更改键和值的位置,然后使用值获取键,字典中的键可以具有相同的值,但它们(键)应该不同。例如,如果您有一个列表,并且列表的第一个值是问题的关键,而其他值则是第一个值的规范:
list1=["Name",'ID=13736','Phone:1313','Dep:pyhton']
您可以通过以下循环在Dictionary中轻松保存和使用数据:
data_dict={}
for i in range(1, len(list1)):
data_dict[list1[i]]=list1[0]
print(data_dict)
{'ID=13736': 'Name', 'Phone:1313': 'Name', 'Dep:pyhton': 'Name'}
那么您可以根据任何输入值找到键(名称)。