Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/351.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 ImportError:无法导入名称计数器_Python - Fatal编程技术网

Python ImportError:无法导入名称计数器

Python ImportError:无法导入名称计数器,python,Python,我尝试过使用Counter(),但每次都是: from collections import Counter 我得到一个错误,说: Traceback (most recent call last): File "<web session>", line 1, in <module> ImportError: cannot import name Counter 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 ImportError:无法导入名称计数器 我

我尝试过使用Counter(),但每次都是:

from collections import Counter
我得到一个错误,说:

Traceback (most recent call last):
  File "<web session>", line 1, in <module>
ImportError: cannot import name Counter
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
ImportError:无法导入名称计数器
我真的需要制作一个包含计数器的文件,然后从那里导入它吗?
我是初学者,所以只有最基本的答案才行。

您可以将列表转换为
集合

l = ['a','b', 'c', 'a', 'd', 'e', 's', 'd', 'e', 'c']
print (len(set(l)) #prints  6

我认为你们不想使用集合中的计数器。当您想计算每个单词出现的次数时,使用计数器。例如:

from collections import Counter
Counter(['dog','cat','dog']) # Should output Counter({'dog': 2, 'cat': 1})
要计算列表中不同单词的数量,可以尝试使用以下方法:

len(set(yourList))
为避免不同情况下的重复,请执行以下操作:

len(set(word.lower() for word in yourList))
与列表不同,集合只允许包含其包含的项的一个实例


您可能有一个早期版本的Python,它在标准库中不包含计数器。如果是这种情况,如果可以的话,您应该更新到一个更新的版本

计数器仅支持python2.7及更高版本,在早期版本中不可用。

使用

from collections import Counter

并确保
计数器的
C
字母是大写字母。

在Python3中

import collections
a=collections.Counter(list(i for i in input()))
print(a)
输入-
aaabbbccc

输出-
计数器({'c':4,'a':3,'b':3})


如果您想要元素,请使用
a.elements()
,要获取值,请使用
a.values()

谢谢,它现在可以工作了,除了一件事。当你有一个字符串列表,而其中一个字符串是空字符串时,你如何去除它?@KeelyAranyos你的列表。删除(“”)谢谢,你是唯一一个真正回答问题的人,这对我很有帮助。@sharafjaffri你可能应该接受他的答案,作为正确的答案。因为这没有回答问题,所以你应该放弃投票,然而,这实际上是我犯的错误,所以+1来自我!