Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 类型错误:不可损坏的类型:';列表`在字典中设置值时_Python_Python 3.x_List_Dictionary - Fatal编程技术网

Python 类型错误:不可损坏的类型:';列表`在字典中设置值时

Python 类型错误:不可损坏的类型:';列表`在字典中设置值时,python,python-3.x,list,dictionary,Python,Python 3.x,List,Dictionary,我试图从文本文件中找出十个最常用的单词 def counting_word(script): outcomes_word = {} for i in script: i = i.lower().split() if i in outcomes_word: outcomes_word[i] += 1 else: outcomes_word[i] = 1 retur

我试图从文本文件中找出十个最常用的单词

def counting_word(script):
    outcomes_word = {}
    for i in script:
        i = i.lower().split()
        if i in outcomes_word:
                outcomes_word[i] += 1
        else:
                outcomes_word[i] = 1
    return outcomes_word
但是,当我像上面那样键入代码并使用该函数时, 结果是
TypeError:unhabable type:'list

预期产出:

如果我需要上传任何进一步的信息或txt.file,我会上传

请帮助我

发生这种情况是因为我(在您的循环中)是一个列表,它不能是字典的键。 必须在循环之前拆分列表:

def counting_word(script):
    outcomes_word = {}
    l=script.lower().split()
    for i in l:
        if i in outcomes_word:
            outcomes_word[i] += 1
        else:
            outcomes_word[i] = 1
    return outcomes_word

退房柜台:|为什么在
i.lower()
之后需要
split()
?请同时阅读。你的标题应该概括你的实际问题,而不是你正在进行的项目的总体目标。这是否回答了你的问题?请寻找现有的职位,回答你的问题之前,你自己做一个!感谢您在我将其放入python代码时对我的帮助。”def counting_word(script):outlets_word={}l=script.lower().split()表示l中的i:if in outlets_word:outlets_word[i]+=1 else:outlets_word[i]=1返回结果_word'***当我键入'counting_word(partb')时,结果显示“list”对象没有属性“lower”。请使用您的代码并将
结果\u单词[i]
替换为
结果\u单词[tuple(i)]
。只是猜测而已。或者最好使用计数器。