简体   繁体   中英

In python, what does len(list) do?

Does len(list) calculate the length of the list every time it is called, or does it return the value of the built-in counter?
I have a context where I need to check the length of a list every time through a loop, like:

listData = []
for value in ioread():
    if len(listData)>=25:
        processlistdata()
        clearlistdata()
    listData.append(value)

Should I check len(listData) on every iteration, or should I have a counter for the length of the list?

You should probably be aware, if you're worried about this operation's performance, that "lists" in Python are really dynamic arrays. That is, they're not implemented as linked lists, which you generally have to "walk" to compute a length for (unless stored in a header).

Since they already need to store "bookkeeping" information to handle memory allocation, the length is stored too.

Help on built-in function len in module __builtin__:

len(...)
    len(object) -> integer

    Return the number of items of a sequence or mapping.

so yes, len(list) returns how many items in the list. You might want to describe in more details, providing necessary input files/output to help better understand what you want to do.

len(list) returns the length of a list. If you change it, you'll have to check it's length every iteration. Or use a counter.

len(list) returns the length of the list. Everytime you call it, it will return the length of the list as it currently is. You could set up a counter by taking the len of list initially and then adding 1 to the variable each time something is appended to the list.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM