Python中請(qǐng)使用isinstance()判斷變量類型
一、isinstance()
在Python中可以使用type()與isinstance()這兩個(gè)函數(shù)判斷對(duì)象類型,而isinstance()函數(shù)的使用上比type更加方便。
# coding=utf-8
a = 10
def b():
pass
print isinstance(a,(int,str))
print isinstance(a,(float,str))
print isinstance(b,(str,int))
class c:
pass
obj = c()
print isinstance(obj,(c,int))
執(zhí)行結(jié)果:
True
False
False
True
二、isinstance 和 type的區(qū)別
isinstance 和 type的區(qū)別在于:
class A:
pass
class B(A):
pass
isinstance(A(), A) # returns True
type(A()) == A # returns True
isinstance(B(), A) # returns True
type(B()) == A # returns False
區(qū)別就是 對(duì)于subclass之類的 type就不行了,所以,強(qiáng)烈建議不要使用type判斷對(duì)象類型。
相關(guān)文章
Python寫(xiě)入MySQL數(shù)據(jù)庫(kù)的三種方式詳解
Python 讀取數(shù)據(jù)自動(dòng)寫(xiě)入 MySQL 數(shù)據(jù)庫(kù),這個(gè)需求在工作中是非常普遍的,主要涉及到 python 操作數(shù)據(jù)庫(kù),讀寫(xiě)更新等。本文總結(jié)了Python寫(xiě)入MySQL數(shù)據(jù)庫(kù)的三種方式,需要的可以參考一下2022-06-06Python實(shí)現(xiàn)二維數(shù)組按照某行或列排序的方法【numpy lexsort】
這篇文章主要介紹了Python實(shí)現(xiàn)二維數(shù)組按照某行或列排序的方法,結(jié)合具體實(shí)例形式分析了Python使用numpy模塊的lexsort方法針對(duì)二維數(shù)組進(jìn)行排序的常用操作技巧,需要的朋友可以參考下2017-09-09python中__init__方法知識(shí)點(diǎn)詳解
Python中常會(huì)看到在很多類中都有一個(gè)__init__函數(shù),該函數(shù)有什么作用,又該如何使用呢,下面這篇文章主要給大家介紹了關(guān)于python中__init__知識(shí)點(diǎn)的相關(guān)資料,需要的朋友可以參考下2023-04-04解決python寫(xiě)入mysql中datetime類型遇到的問(wèn)題
今天小編就為大家分享一篇解決python寫(xiě)入mysql中datetime類型遇到的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-06-06