欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python中判斷類型函數(shù)isinstance()示例詳解

 更新時間:2024年10月06日 09:51:29   作者:春天的菠菜  
isinstance()函數(shù)是Python的內(nèi)置函數(shù),用于判斷一個變量是否是某個類型或者是該類型的子類的實例,在Python中,所有類都繼承自object,所以任何實例都會是object的實例,本文給大家介紹python中判斷類型函數(shù)isinstance(),感興趣的朋友一起看看吧

函數(shù)isinstance()可以判斷一個變量的類型,既可以用在Python內(nèi)置的數(shù)據(jù)類型如str、list、dict,也可以用在我們自定義的類,它們本質(zhì)上都是數(shù)據(jù)類型。

假設(shè)有如下的 Person、Man和 Woman的定義及繼承關(guān)系如下:

class Person(object):
    def __init__(self, name, gender):
        self.name = name
        self.gender = gender
class Man(Person):
    def __init__(self, name, gender, score):
        super(Man, self).__init__(name, gender)
        self.score = score
class Woman(Person):
    def __init__(self, name, gender, course):
        super(Woman, self).__init__(name, gender)
        self.course = course
p = Person('Tim', 'Male')
m = Man('Bob', 'Male', 88)
w = Woman('Alice', 'Female', 'English')

當我們拿到變量 p、m、w 時,可以使用 isinstance 判斷類型:

>>> isinstance(p, Person)
True    # p是Person類型
>>> isinstance(p, man)
False   # p不是Man類型
>>> isinstance(p, Woman)
False   # p不是Woman類型

這說明在繼承鏈上,一個父類的實例不能是子類類型,因為子類比父類多了一些屬性和方法。

我們再考察 m :

>>> isinstance(m, Person)
True    # m是Person類型
>>> isinstance(m, Man)
True    # m是Man類型
>>> isinstance(m, Woman)
False   # m不是Woman類型

mMan類型,不是Woman類型,這很容易理解。但是,m也是Person類型,因為Man繼承自Person,雖然它比Person多了一些屬性和方法,但是,把 m 看成Person的實例也是可以的。

這說明在一條繼承鏈上,一個實例可以看成它本身的類型,也可以看成它父類的類型。

任務(wù)

請根據(jù)繼承鏈的類型轉(zhuǎn)換,依次思考 w是否是 Person,Man,Woman,object 類型,并使用isinstance()判斷來驗證您的答案。

class Person(object):
    def __init__(self, name, gender):
        self.name = name
        self.gender = gender
class Man(Person):
    def __init__(self, name, gender, score):
        super(Man, self).__init__(name, gender)
        self.score = score
class Woman(Person):
    def __init__(self, name, gender, course):
        super(Woman, self).__init__(name, gender)
        self.course = course
w = Woman('Alice', 'Female', 'English')
print (isinstance(w,Person))
print (isinstance(w, Man))
print (isinstance(w, Woman))
print (isinstance(w, object ))
#運行結(jié)果
#True
#False
#True
#True

到此這篇關(guān)于python中判斷類型函數(shù)isinstance()示例詳解的文章就介紹到這了,更多相關(guān)python判斷類型函數(shù)isinstance()內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python取出字典中的值的實現(xiàn)

    Python取出字典中的值的實現(xiàn)

    本文主要介紹了Python取出字典中的值,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2023-01-01
  • python僵尸進程產(chǎn)生的原因

    python僵尸進程產(chǎn)生的原因

    這篇文章主要給大家講解的是在Python中是如何產(chǎn)生僵尸進程的,以及如何清除僵尸進程的方法,有需要的小伙伴可以參考下
    2017-07-07
  • Python爬取網(wǎng)頁中的圖片(搜狗圖片)詳解

    Python爬取網(wǎng)頁中的圖片(搜狗圖片)詳解

    沒想到python是如此強大,令人著迷,以前看見圖片總是一張一張復(fù)制粘貼,現(xiàn)在好了,學(xué)會python就可以用程序?qū)⒁粡垙垐D片,保存下來。下面這篇文章主要給大家介紹了利用Python3.6爬取搜狗圖片網(wǎng)頁中圖片的相關(guān)資料,需要的朋友可以參考下。
    2017-03-03
  • python常規(guī)方法實現(xiàn)數(shù)組的全排列

    python常規(guī)方法實現(xiàn)數(shù)組的全排列

    這篇文章主要介紹了python常規(guī)方法實現(xiàn)數(shù)組的全排列,實例分析了全排列的概念及Python常規(guī)實現(xiàn)技巧,需要的朋友可以參考下
    2015-03-03
  • python如何實現(xiàn)異步調(diào)用函數(shù)執(zhí)行

    python如何實現(xiàn)異步調(diào)用函數(shù)執(zhí)行

    這篇文章主要介紹了python如何實現(xiàn)異步調(diào)用函數(shù)執(zhí)行,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下
    2019-07-07
  • python 實現(xiàn)以相同規(guī)律打亂多組數(shù)據(jù)

    python 實現(xiàn)以相同規(guī)律打亂多組數(shù)據(jù)

    這篇文章主要介紹了python 實現(xiàn)以相同規(guī)律打亂多組數(shù)據(jù),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • python Matplotlib畫圖之調(diào)整字體大小的示例

    python Matplotlib畫圖之調(diào)整字體大小的示例

    本篇文章主要介紹了python Matplotlib畫圖之調(diào)整字體大小的示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11
  • pycharm創(chuàng)建scrapy項目教程及遇到的坑解析

    pycharm創(chuàng)建scrapy項目教程及遇到的坑解析

    這篇文章主要介紹了pycharm創(chuàng)建scrapy項目教程及遇到的坑解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下
    2019-08-08
  • Python如何避免文件同名產(chǎn)生覆蓋

    Python如何避免文件同名產(chǎn)生覆蓋

    這篇文章主要介紹了Python如何避免文件同名產(chǎn)生覆蓋,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下
    2020-06-06
  • python執(zhí)行數(shù)據(jù)庫的查詢操作實例講解

    python執(zhí)行數(shù)據(jù)庫的查詢操作實例講解

    在本篇文章里小編給大家整理了一篇關(guān)于python執(zhí)行數(shù)據(jù)庫的查詢操作實例講解內(nèi)容,有需要的朋友們可以參考學(xué)習下。
    2021-10-10

最新評論