搜寻清单/字典时出现KeyError

遇到一些非常简单的问题……请帮助我找出错误。

fileA.py

big_dict = {
    "iAmKeyA" : "iAmValueA","iAmKeyB" : "iAmValueB","iAmKeyC" : "iAmValueC","iAmKeyD" : "iAmValueD","iAmKeyE" : "iAmValueE","iAmKeyF" : "iAmValueF"
}

def getvalue(keyName):
    return big_dict[keyName]

mainFile.py

import fileA

otherList = [["iAmKeyB",123,456],["iAmKeyA",321,654],["iAmKeyC",911,110]]

for listItem in otherList:
    print(fileA.getvalue(listItem[0]))

为什么我尝试打印KeyError: iAmKeyB的值时会得到otherList?如果big_dict是嵌套字典,我什至会得到TypeError: 'NoneType' object is not subscriptable

如果我尝试不使用for循环,它可以返回其值。

print(fileA.getvalue("iAmKeyB"))

我已经检查了返回值的类型。它们都是字符串。

oOFoXOo 回答:搜寻清单/字典时出现KeyError

对我有用。

big_dict = {
    "iAmKeyA" : "iAmValueA","iAmKeyB" : "iAmValueB","iAmKeyC" : "iAmValueC","iAmKeyD" : "iAmValueD","iAmKeyE" : "iAmValueE","iAmKeyF" : "iAmValueF"
}

def getValue(keyName):
    return big_dict[keyName]

otherList = [["iAmKeyB",123,456],["iAmKeyA",321,654],["iAmKeyC",911,110]]

for listItem in otherList:
    print(getValue(listItem[0]))

输出

iAmValueB
iAmValueA
iAmValueC
本文链接:https://www.f2er.com/2936081.html

大家都在问