list
并配合deepcopy
import copy
a = something_iterable(x)
if list(copy.deepcopy(a)):
do something about x
# 这里之所以使用deepcopy是因为iterable对象有可能只能被list一次,所以使用深拷贝创建一个新的对象进行测量
方法二:使用cardinality
包
import cardinality
a = something_iterable(x)
print(cardinality.count(a))
方法三:使用more_itertools
包
import more_itertools
a = something_iterable(x)
print(more_itertools.ilen(a))
原文:http://blog.51cto.com/l0vesql/2328924