Python內建函數len

來源:互聯網
上載者:User
英文文檔:

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).

說明:

 1. 返回對象的長度,參數可以是序列(比如字串、位元組數組、元組、列表和range對象),或者是集合(比如字典、集合、不可變集合)

>>> 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. 如果參數為其它類型,則其必須實現__len__方法,並返回整數,否則報錯。

>>> 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 "", line 1, in     len(b)TypeError: object of type 'B' has no len()>>> class C:    def __len__(self):        return 'len'>>> c = C()>>> len(c)Traceback (most recent call last):  File "", line 1, in     len(c)TypeError: 'str' object cannot be interpreted as an integer
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.