字典中通过值找键,为什么值为字母时报错‘未定义’?

这是我定义的函数

def find_key_of_value(d: dict, val):
    if val in d.values():
        key = list(d.keys())[list(d.values()).index(val)]
        return key
    else:
        return None

然后调用

print(find_key_of_value({'a':a, 'b':b, 'c':c},b))

如果值是数字,都没有问题,但是改成了字母,就会报错了

---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-54-571009abf18d> in <module>
----> 1 print(find_key_of_value({'a':a, 'b':b, 'c':c},b))

NameError: name 'b' is not defined

初来乍到还没有c币,请大神体谅

1个回答

老哥,你要是想让百度帮你查查苹果是啥会给浏览器丢个真苹果进去么。。。
你那个b是变量啊,你应该传'b'。
你那个key = list(d.keys())[list(d.values()).index(val)]也是醉了,咋不写key=ld[val]

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问