Python知識點-內置函數
1.staticmethod 靜態方法
class Foo: def __init__(self): pass def sa(x):#此處參數無self,就是個普通方法 print(x) spam=staticmethod(spam) #把spam函數做成靜態方法 Foo.sa()#類可以直接調用 f=Foo()#也可以實例化調用 f.sa() #等同於在普通函數上加裝飾器 class Foo: def __init__(self): pass @staticmethod #靜態方法 def sa(x):print(’裝飾器形式‘)
2.__import__ 動態模塊導入
__import__(‘xx.xx‘)# 以字符串形式import模塊。 #推薦導入方式下面這種 import importlib xxx=importlib.import_module(‘xx.xx‘)
3.all() 判斷給定的所有叠代對象為True時返回True
4.enumerate(seq,index)遍歷對象加索引,模式是0開始,可以設定index值1,從1開始
5.int(x,base=10) base 默認是10 也就是說10進制
#base傳入值時x必須為字符串形式,base為當前字符串的進制,都是轉換為10進制print(int(‘0x12‘,16)) # 16進制的0X12 轉換為10進制 print(int(‘10‘,8)) # 8進制的10 轉換為10進制 print(int(‘110‘,2))#2進制110 轉換10進制
6.ord(c) 返回對應的 ASCII 數值
ord(‘a‘) #a 所對應的ASCII碼97
7.chr(c)用一個範圍在 range(256)內的(就是0~255)整數作參數,返回一個對應的字符。
#c可以是10進制或者16進制形式
>>>print chr(0x30), chr(0x31), chr(0x61) # 十六進制 0 1 a >>> printchr(48), chr(49), chr(97) # 十進制 0 1 a
8.hex() 函數用於將10進制整數轉換成16進制,以字符串形式表示。
>>>hex(255) ‘0xff‘ >>> hex(-42) ‘-0x2a‘ >>> hex(1L) ‘0x1L‘ >>> hex(12) ‘0xc‘ >>> type(hex(12)) <class ‘str‘> # 字符串
9.oct()函數將一個整數轉換成8進制字符串。
>>>oct(10) ‘012‘ >>> oct(20) ‘024‘ >>> oct(15) ‘017‘
10bin()返回一個整數 int 或者長整數 long int 的二進制表示。
11.eval() 函數用來執行一個字符串表達式,並返回表達式的值。
>>>x = 7 >>> eval( ‘3 * x‘ ) 21 >>> eval(‘pow(2,2)‘) 4 >>> eval(‘2 + 2‘) 4 >>> n=81 >>> eval("n + 4") 85
12.iter()函數用來生成叠代器。
13.super() 函數是用於調用父類(超類)的一個方法。
Python 3 可以使用直接使用 super().meth(x) 代替 super(Class, self).meth(x)
14.locals() 函數會以字典類型返回當前位置的全部局部變量。
def bar(arg): # 兩個局部變量:arg、z z = 1 print (locals()) bar(4) {‘z‘: 1, ‘arg‘: 4} # 返回一個名字/值對的字典
15.reduce() 函數會對參數序列中元素進行累積。
def add(x, y) : # 兩數相加 return x + y >>> reduce(add, [1,2,3,4,5]) # 計算列表和:1+2+3+4+5 15 >>> reduce(lambda x, y: x+y, [1,2,3,4,5]) # 使用 lambda 匿名函數 15
16.property
class C(object): def __init__(self): self._x = None def getx(self): return self._x def setx(self, value): self._x = value def delx(self): del self._x x = property(getx, setx, delx, "I‘m the ‘x‘ property.") c=C() print(c.setx(10),c.getx(),c.delx())
#等同於使用@property
class C(object):
def __init__(self):
self._x = None
@property
def x(self):
return self._x
@x.setter
def x(self,value):
self._x = value
@x.deleter
def x(self):
del self._x
c=C()
c.x=100
print(c.x)
17.sorted() 函數對所有可叠代的對象進行排序操作。
sort 與 sorted 區別:
sort 是應用在 list 上的方法,sorted 可以對所有可叠代的對象進行排序操作。
list 的 sort 方法返回的是對已經存在的列表進行操作,無返回值,而內建函數 sorted 方法返回的是一個新的 list,而不是在原來的基礎上進行的操作。
18.cmp(x,y) 函數用於比較2個對象,如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1。
Python知識點-內置函數