对不起,这个基本的问题,但我的搜索这并没有发现任何东西,除了如何获得一个字典的键基于它的值,我宁愿不使用,因为我只是想要键的文本/名称,担心搜索值可能最终返回2个或更多的键,如果字典有很多条目…我想做的是:
mydictionary={'keyname':'somevalue'}
for current in mydictionary:
result = mydictionary.(some_function_to_get_key_name)[current]
print result
"keyname"
这样做的原因是我要把这些打印到一个文档中,我想使用键名和值
我已经看到下面的方法,但这似乎只是返回键的值
get(key[, default])
轻松更改键和值的位置,然后使用值获取键,
在字典中键可以有相同的值,但它们(键)应该不同。
例如,如果你有一个列表,它的第一个值是你的问题的键,其他值是第一个值的规格:
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'}
然后可以根据任何输入值找到键(名称)。
我有时会创建另一个字典,以便我需要访问的字符串。然后我遍历多个匹配键的字典来构建一个表,例如,第一列作为描述。
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])
你可以很容易地做大量的字典来匹配数据(我喜欢的事实是,使用字典,你总是可以引用一些众所周知的键名)
是的,我使用字典来存储函数的结果,所以我不需要每次都运行这些函数,我只需要调用它们一次,然后随时访问结果。
编辑:在我的例子中键名并不重要(我个人喜欢使用相同的键名,因为它更容易从任何匹配的字典中选择一个值),只要确保每个字典中的键数是相同的