來判斷乙個物件是否是乙個已知的型別。
語法:isinstance(object, classinfo) -> bool
引數:返回值:
isinstance() 與 type() 區別:
示例:
classa:
pass
class
b(a)
:pass
isinstance
(a()
, a)
# true
type
(a()
)== a # true
isinstance
(b()
, a)
# true
type
(b()
)== a # false
用於判斷物件是否包含對應的屬性。
語法:hasattr(object, name: str) -> bool
引數:返回值:
示例:
class
coordinate
: x =
10point1 = coordinate(
)hasattr
(point1,
'x')
# true
hasattr
(point1,
'y')
# false
返回乙個物件屬性值。
語法:getattr(object, name[, default])
引數:返回值:
示例:
classa:
bar =
'bar的值'
a = a(
)getattr
(a,'bar'
)# 'bar的值'
getattr
(a,'bar2'
,'沒有該屬性'
)# '沒有該屬性'
設定屬性值,該屬性不一定是存在的。
語法:setattr(object, name, value) -> none
引數:返回值:
示例:
classa:
bar =
'bar的值'
a = a(
)getattr
(a,'bar'
)# 'bar的值'
getattr
(a,'bar2'
,'沒有該屬性'
)# '沒有該屬性'
setattr
(a,'bar2'
,'bar2的值'
)getattr
(a,'bar2'
,'沒有該屬性'
)# 'bar2的值'
呼叫父類(超類)的乙個方法。
語法:super(type[, object-or-type])
引數:返回值:
示例 python3:
classf:
def__init__
(self)
:print
('f'
)class
a(f)
:def
__init__
(self)
:print
('a'
)class
b(a)
:def
__init__
(self)
:super()
.__init__(
)b = b(
)# 'a'
示例 python2:
#!/usr/bin/python
# -*- coding: utf-8 -*-
classf(
object):
# python2.x 需要繼承 object
def__init__
(self)
:print
('f'
)class
a(f)
:def
__init__
(self)
:print
('a'
)class
b(a)
:def
__init__
(self)
:super
(b, self)
.__init__(
)b = b(
)# 'a'
Python一些內建函式
dir obj 顯示物件的屬性,如果沒有提供引數,則顯示全域性變數的名字 help obj 顯示物件的文件字串,如果沒有提供任何引數,進入互動式幫助 len obj 返回物件長度 open fn,mode 以mode方式開啟乙個檔名為fn的檔案 range start,stop step 返回乙個整...
python的一些內建函式
python並非我的第一語言,所以之前看python 的時候遇到過一些內建函式的時候,總是以物件導向不看細節的心情大概理解用法之後就置之不理了。但是內建函式實在太短小精悍,很好用,所以總是不可避免的要遇到,所以還是下決心好好分析一下。我現在遇到過的有幾種 filter,map,reduce,lamb...
Python的一些內建函式2
1.字串型別內建方法 方法 描述 string.capitalize 把字串的第乙個字元大寫 string.center width 返回乙個原字串居中,並使用空格填充至長度 width 的新字串 string.count str,beg 0,end len string 返回 str 在 stri...