本文只考虑值唯一的情况
一、举例说明
思路:找出值对应的索引idx
,再取出索引为idx
的键
d = {"A": 5, "B": 10, "C": 15, "D": 20}
l = [5, 5, 5, 5, 5, 10, 20, 20, 20, 20, 15, 15, 15, 15]
for value in l:
print(list(d.keys())[list(d.values()).index(value)], end='')
二、代码详解
像这种很多个操作糅合在一个语句里面的情况,我觉得可以从最内层开始看起:
d.values()
:取出字典的所有值list(d.values())
:将其强转为列表,便于索引list(d.values()).index(value)
:返回值列表中,值为value
的索引(此时,即找出了值对应的索引idx
)d.keys()
:取出字典的所有键list(d.keys())
:强转为列表- 最后,整个语句:在键列表中,取出索引为
idx
的键