遇到一些非常简单的问题……请帮助我找出错误。
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"))
我已经检查了返回值的类型。它们都是字符串。
答案 0 :(得分:0)
对我有用。
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