84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
比如:dicxx = {'a':'001', 'b':'002'}
需要根据输入001,得到a
如果操作?百度了半天,没找到答案。感谢。
ringa_lee
帮你搜索了一下、
>>> dicxx = {'a':'001', 'b':'002'} >>> list(dicxx.keys())[list(dicxx.values()).index("001")] 'a' >>>
引用一段Python3文档里面的原话。
If keys, values and items views are iterated over with no intervening modifications to the dictionary, the order of items will directly correspond.
也就是说,在你迭代的过程中如果没有发生对字典的修改,那么.keys() and .values 这两个函数返回的 dict-view对象总是保持对应关系。
这种情况可以先使用字典推导式反转原字典的key和value,然后就可以根据value选key了。对于Python3:
key
value
dicxx = {'a':'001', 'b':'002'} new_dict = {v:k for k,v in dicxx.items()} # {'001': 'a', '002': 'b'} new_dict['001'] # 'a'
def get_keys(d, value): return [k for k,v in d.items() if v == value] get_keys({'a':'001', 'b':'002'}, '001') # => ['a']
这个情况只能遍历了吧......dict并不是这样用的啊......
帮你搜索了一下、
引用一段Python3文档里面的原话。
也就是说,在你迭代的过程中如果没有发生对字典的修改,那么.keys() and .values 这两个函数返回的 dict-view对象总是保持对应关系。
这种情况可以先使用字典推导式反转原字典的
key
和value
,然后就可以根据value
选key
了。对于Python3:
这个情况只能遍历了吧......
dict并不是这样用的啊......