我有许多填充了单词的Python列表,在这些单词中我想保留至少出现在两个列表中的那些。
我的第一个猜测是将所有这些列表折叠成一个大的,然后保留有计数的单词> 1。
问题在于,当我尝试将所有列表折叠成一个大的列表时,我遇到了一些内存问题。
请帮忙吗?非常感谢
答案 0 :(得分:3)
如果你在计算东西,请使用计数器!
from collections import Counter
c = Counter(['bob','steve','steve','joe'])
# c == Counter({'steve': 2, 'bob': 1, 'joe': 1})
c.update(['alan','jose','steve'])
# c == Counter({'steve': 3, 'jose': 1, 'bob': 1, 'joe': 1, 'alan': 1})