Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从python字典中获取键和值_Python_Dictionary_If Statement_Key_Key Value - Fatal编程技术网

如何从python字典中获取键和值

如何从python字典中获取键和值,python,dictionary,if-statement,key,key-value,Python,Dictionary,If Statement,Key,Key Value,我的字典如下所示 my_dict = {4: 8, 3: 11, 4: 10, 5: 10, 8: 5, 9: 5, 10: 10, 5: 2} 我试图找出当key==value以及迭代值成为键时如何获得排序列表。结果是 [2,5,4,8],[10]] 有什么想法吗?这对你有用吗: my_dict = {1: 3, 4: 2, 2: 6, 10: 10} loop_backs = set() new_dict = my_dict.copy() for k,v in my_dict.items

我的字典如下所示

my_dict = {4: 8, 3: 11, 4: 10, 5: 10, 8: 5, 9: 5, 10: 10, 5: 2}
我试图找出当
key==value
以及迭代值成为键时如何获得排序列表。结果是

[2,5,4,8],[10]]


有什么想法吗?

这对你有用吗:

my_dict = {1: 3, 4: 2, 2: 6, 10: 10}

loop_backs = set()
new_dict = my_dict.copy()
for k,v in my_dict.items():
    if k == v:
        loop_backs |= {k}
        del new_dict[k]
repeated = set(new_dict.values()).intersection(new_dict.keys()) | loop_backs
res = set()
for k,v in new_dict.items():
    if (k in repeated) or (v in repeated):
        res |= {k,v}
print(res, loop_backs)
{2,4,6}{10}


当值成为关键时,您能否详细说明一下
?示例字典无效,因为它包含两个重复的键(即
4
5
)。此外,只有一项key==value(
10:10
),因此预期结果没有任何意义。字典中不能有重复的键,
my_dict
没有所有的键值对,请使用元组列表。请更正字典my_dict={4:8,3:11,6:10,7:10,8:5,9:5,10:10,5:2}。我需要得到这部分[2,5,4,8];这已经被倒排了,但是没有倒排,那么它就是[4,8,5,2],它来自键:值{4:8,8:5;5:2}{10:10}注释不用于扩展讨论;这段对话已经结束。