对不起,这个基本的问题,但我的搜索这并没有发现任何东西,除了如何获得一个字典的键基于它的值,我宁愿不使用,因为我只是想要键的文本/名称,担心搜索值可能最终返回2个或更多的键,如果字典有很多条目…我想做的是:

mydictionary={'keyname':'somevalue'}
for current in mydictionary:

   result = mydictionary.(some_function_to_get_key_name)[current]
   print result
   "keyname"

这样做的原因是我要把这些打印到一个文档中,我想使用键名和值

我已经看到下面的方法,但这似乎只是返回键的值

get(key[, default])

当前回答

您可以简单地使用*来解包字典键。例子:

d = {'x': 1, 'y': 2}
t = (*d,)
print(t) # ('x', 'y')

其他回答

可以通过将字典键和值强制转换为list来实现这一点。对物品也可以这样做。

例子:

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'

就这么简单:

mydictionary={'keyname':'somevalue'}
result = mydictionary.popitem()[0]

你要修改你的字典,应该先把它复制一份

如果你想同时访问键和值,使用下面的方法:

Python 2:

for key, value in my_dict.iteritems():
    print(key, value)

Python 3:

for key, value in my_dict.items():
    print(key, value)

如果你有字典的话

d = {'age':24}

然后你可以通过d.popitem()获取键和值

key, value = d.popitem()

轻松更改键和值的位置,然后使用值获取键, 在字典中键可以有相同的值,但它们(键)应该不同。 例如,如果你有一个列表,它的第一个值是你的问题的键,其他值是第一个值的规格:

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'}

然后可以根据任何输入值找到键(名称)。