issubclass #用於判斷自己的子類
issubclass(a,b) #
a是不是b的子類,是返回true 否則 false 自身也屬於自己的子類
isinstance(object,classinfo) #用於檢查乙個例項物件是否屬於乙個類 classinfo 可以傳入乙個元組
class
a(object):
pass
class
b(a):
pass
class
c(object):
pass
a=a()
b=b()
isinstance(a,a) -->true
isinstance(a,b) -->false
isinstance(b,a) -->true
isinstance(b,b) -->true
isinstance(b,(c,b)) -->true #
當傳入乙個元組時,只要有乙個為真,返回結果都是true
hasattr(object,name) #attr=attribute:屬性 用於測試乙個物件裡面是否有指定的屬性
class
d(object):
def__init__(self,x=0):
self.x=x
d=d()
hasattr(d,'x
')-->true #
x傳入的必須是乙個字串不然會輸出異常
hasattr(d,x)
traceback (most recent call last):
file
"", line 1, in
nameerror: name 'x
'isnot defined
getattr(object,name[,default]) #用於返回一些指定的屬性值
getattr(d,'x
')0getattr(d,'y
')traceback (most recent call last):
file
"", line 1, in
attributeerror: 'd
' object has no attribute 'y'
getattr(d,'y
','您所訪問的屬性值不存在。。。
') #
default 自定義返回資訊
'您所訪問的屬性值不存在。。。
'
setattr(object,name,value]) #與getattr 獲取屬性不存在可以指定乙個新的值
setattr(d,'y
','fishc')
getattr(d,'y
','您所訪問的屬性值不存在。。。
')-->'
fishc
'
delattr(object,name) #刪除屬性,如果刪除不存在的屬性會丟擲attributeerror異常
#property 的方法和使用 在之前操作裡面乙個類的例項化物件,當乙個類被刪除時候 這個例項化物件不會被刪除,但用這個property 方法時候,類被刪除例項化物件也會被刪除
class
c(object):
def__init__(self,size=10):
self.size=size
defgetsize(self):
return
self.size
defsetsize(self,value):
self.size=value
return
self.size
defdelsize(self):
delself.size
x=property(getsize,setsize,delsize)
c=c()
c.x10c.x=18c.x
18c.getsize()
18del
c.xc.getsize()
traceback (most recent call last):
file
"", line 1, in
file
"", line 7, in
getsize
attributeerror: 'c
' object has no attribute '
size
'c.x
traceback (most recent call last):
file
"", line 1, in
file
"", line 7, in
getsize
attributeerror: 'c
' object has no attribute '
size
'
Python和類相關的一些BIF
issubclass class,classinfo class是否是classinfo的子類 繼承關係 classa def init self self.x 1def getsize self return self.x defsetsize self,value self.x value de...
類和物件 相關的BIF
一 issubclass class,classinfo 如果說第乙個引數是第二個引數的子類則返回true 注意 乙個類會被認為是自身的子類 classinfo 可以是類物件組成的元祖,只要class是其中 任何乙個候選類的子類,則返回true class a pass class b a pass...
python中一些相關的BIF
一些相關的bif issubclass class,classinfo class a pass class b a pass print issubclass b,a print issubclass a,b 輸出為true false意思是b類在a類裡面 isinstant object,cla...