我之前得到了一个很好的答案来解决类似问题,但我没有考虑我问的问题的可扩展性。我使用的文本编辑器遇到了大量文本粘贴和最后一行换行的问题,或者如果我从文档中删除所有换行符,那么文本会从屏幕上移开,不允许我滚动到结尾。所以我看到如何在文本上使用open作为文件,但现在代码无法正常工作 这是代码:
import sys
import os
from collections import Counter
def main():
with open('garbledText.txt') as text:
print [k for k,v in Counter(text).items() if v<3]
if __name__=='__main__':
main()
似乎它正朝着正确的方向发展,因为如果我将'v&lt; 3'改为'v&lt; 1',我会得到一个空列表,但是'v&lt; 3'我得到了所有的字符。答案 0 :(得分:1)
替换text
text.read(),
,第一个制作行集合和第二个字符集。
from collections import Counter
def main():
with open('garbledText.txt') as text:
collection = Counter(text.read())
print [char for char, times in collection.items() if times < 3]
if __name__=='__main__':
main()