首頁  >  文章  >  後端開發  >  Python內建issubclass函數的詳細介紹

Python內建issubclass函數的詳細介紹

高洛峰
高洛峰原創
2017-03-21 09:28:171929瀏覽

 英文文件:

issubclass(class, classinfo)

Return true if class is a subclass (direct, indirect or virtual) of classinfo. A class is considered a subclass of itself. classinfo may be a tuple of class objects, in which case every entry in classinfo will be checked. In any other case, a TypeError exception#exception

# is raised.

說明:

  1. 函數

功能用於判斷一個類型物件是否是另一個類型物件的子類,class參數表示需要檢查的類型對象,calssinfo參數表示需要對比類型對象。

  2. 如果class參數是classinfo類型物件(或classinfo類別物件的直接、間接、虛擬子類別)的實例,則傳回True。

>>> issubclass(bool,int)
True
>>> issubclass(bool,(str))
False

>>> class A:
    pass
>>> class B(A):
    pass
>>> issubclass(B,A)
True

  3. 任何一個類別都是自己類別的子類,即class和calssinfo傳入相同類型時,傳回True。

>>> class A:
    pass
>>> issubclass(A,A)
True
  4. 如果classinfo類型對象,是多個類型物件組成的元組,如果class類型物件是元組的任一類型物件的子類,則傳回True,否則傳回False。

>>> issubclass(bool,int)
True>>> issubclass(bool,str)
False>>> issubclass(bool,(str,int))
True
  5. 如果classinfo類型對象,不是一個型別物件或由多個型別物件組成的元組,則會報錯(TypeError)。 ###
>>> issubclass(bool,[str,int])
Traceback (most recent call last):
  File "ffae55b2fb00f5ed70ba1d9647e9051b", line 1, in 4225fa317875f3e92281a7b1a5733569
    issubclass(bool,[str,int])
TypeError: issubclass() arg 2 must be a class or tuple of classes

以上是Python內建issubclass函數的詳細介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn