Home >Backend Development >Python Tutorial >Python built-in function len

Python built-in function len

高洛峰
高洛峰Original
2016-11-05 14:19:152124browse

English document:

len(s)

Return the length (the number of items) of an object. The argument may be a sequence (such as a string, bytes, tuple, list, or range) or a collection ( such as a dictionary, set, or frozen set).

Instructions:

 1. Return the length of the object. The parameter can be a sequence (such as string, byte array, tuple, list and range object), or It is a collection (such as dictionary, set, immutable collection)

>>> len('abcd') # 字符串
>>> len(bytes('abcd','utf-8')) # 字节数组
>>> len((1,2,3,4)) # 元组
>>> len([1,2,3,4]) # 列表
>>> len(range(1,5)) # range对象
>>> len({'a':1,'b':2,'c':3,'d':4}) # 字典
>>> len({'a','b','c','d'}) # 集合
>>> len(frozenset('abcd')) #不可变集合

 2. If the parameter is of other types, it must implement the __len__ method and return an integer, otherwise an error will be reported.

>>> class A:
    def __init__(self,name):
        self.name = name
    def __len__(self):
        return len(self.name)

>>> a = A('')
>>> len(a)
>>> a = A('Aim')
>>> len(a)
>>> class B:
    pass

>>> b = B()
>>> len(b)
Traceback (most recent call last):
  File "<pyshell#65>", line 1, in <module>
    len(b)
TypeError: object of type &#39;B&#39; has no len()
>>> class C:
    def __len__(self):
        return &#39;len&#39;

>>> c = C()
>>> len(c)
Traceback (most recent call last):
  File "<pyshell#71>", line 1, in <module>
    len(c)
TypeError: &#39;str&#39; object cannot be interpreted as an integer


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn