len(list)
每次调用时都会计算列表的长度,还是返回内置计数器的值?
我有一个上下文需要检查长度每次循环都有一个列表,如:
listData = []
for value in ioread():
if len(listData)>=25:
processlistdata()
clearlistdata()
listData.append(value)
我应该在每次迭代时检查len(listData)
,还是应该有一个列表长度的计数器?
答案 0 :(得分:18)
你应该知道,如果你担心这个操作的性能,那就是Python are really动态数组中的“列表”。也就是说,它们并未实现为链接列表,您通常必须“走”以计算长度(除非存储在标题中)。
由于他们已经需要存储“簿记”信息来处理内存分配,因此也存储长度。
答案 1 :(得分:1)
Help on built-in function len in module __builtin__:
len(...)
len(object) -> integer
Return the number of items of a sequence or mapping.
是的,len(list)
返回列表中的项目数。您可能希望更详细地描述,提供必要的输入文件/输出,以帮助您更好地理解您想要做的事情。
答案 2 :(得分:0)
len(list)
返回列表的长度。如果你改变它,你将不得不每次迭代检查它的长度。或者使用柜台。
答案 3 :(得分:0)
len(list)返回列表的长度。每当你调用它时,它将返回当前列表的长度。您可以通过最初获取列表的len来设置计数器,然后在每次将某些内容附加到列表时为该变量添加1。