如何从字典中的字典中访问值以在公式中使用

时间:2014-08-29 13:54:51

标签: python dictionary

我有这样的字典:

tfDic = {
    '/home/seb/Learning/ex17output.txt': {
        'COOL': 1,
        'FILE': 1,
        'FUN': 1,
        'HAVE': 1,
        'STUFF': 2
     }
 }

我试图访问' COOL'通过这样做:

def tf(file, word):
    return tfDic[file][word]

但我得到了KeyError。之后我尝试了:

tf = tfDic[file].values()[term]

但我明白了:

TypeError: list indices must be integers, not str

3 个答案:

答案 0 :(得分:1)

好笑,对我有用。

>>> tfDic = {
...     '/home/seb/Learning/ex17output.txt': {
...         'COOL': 1,
...         'FILE': 1,
...         'FUN': 1,
...         'HAVE': 1,
...         'STUFF': 2
...      }
...  }
>>> def tf(file, word):
...     return tfDic[file][word]
... 
>>> 
>>> tf('/home/seb/Learning/ex17output.txt','COOL')
1

答案 1 :(得分:0)

如果您有KeyError,则表示您的fileword不匹配。打印出值,或在调试器中检查它们。您的词典根本不包含您提供的值。

答案 2 :(得分:0)

我刚认识到一个缺陷,并非所有的子词都有相同的词......

是的,我很愚蠢,试图提供帮助