我想计算一个迭代器的唯一值,但不必先建立一个列表。使用列表,我将例如:
from collections import Counter
from itertools import combinations
my_counts = Counter([sum(x) for x in combinations([1,2,3,4,5])],2)
但是在上面,列出了一个列表,然后应用了Counter
。但是有没有办法保持运行状态,从而使整个列表不需要存储在内存中?
答案 0 :(得分:0)
只需为DATE_AT_8AM_UTC
--------------------------------
29-NOV-18 08.00.00.000000 AM UTC
26-APR-18 08.00.00.000000 AM UTC
26-JUN-18 08.00.00.000000 AM UTC
生成一个生成器表达式而不是Counter
:
list
或更短(但my_counts = Counter(sum(x) for x in combinations([1,2,3,4,5], 2))
仅在Python3中返回生成器):
map
这不会首先在内存中建立一个列表。