python有一些常用的內(nèi)置函數(shù):
數(shù)學(xué)函數(shù)
abs() 獲取絕對(duì)值
min()求最小值
max()求最大值
hash()獲取一個(gè)對(duì)象(字符串或數(shù)值)的哈希值
pow()掀淘,c風(fēng)格的幾次方,math.pow(x, y)
sum()冰抢,對(duì)序列進(jìn)行求和
round(x[, n])返回浮點(diǎn)數(shù)的四舍五入责蝠,n表示小數(shù)點(diǎn)后預(yù)留位數(shù),默認(rèn)為0.
進(jìn)制轉(zhuǎn)換
bin()返回一個(gè)整型int或long int的二進(jìn)制表示
oct()將一個(gè)整數(shù)轉(zhuǎn)換成8進(jìn)制字符串
hex() 將十進(jìn)制整數(shù)轉(zhuǎn)換為16進(jìn)制
類型轉(zhuǎn)換
int()將一個(gè)字符串或數(shù)字傳換成整數(shù)嘉抓,int(x, base=10)
float()將整數(shù)和字符串轉(zhuǎn)換成浮點(diǎn)數(shù)
complex()用于創(chuàng)建一個(gè)復(fù)數(shù)恨诱,形如real+imag*j
chr() 將0~255范圍內(nèi)的整數(shù)轉(zhuǎn)換為對(duì)應(yīng)的ascii字符
ord() 意義和chr()相反,以字符為參數(shù)芯咧,返回對(duì)應(yīng)的ascii數(shù)值牙捉。
bool()將給定參數(shù)轉(zhuǎn)換為布爾類型竹揍,如果沒(méi)有參數(shù)敬飒,返回False。bool是int的子類芬位。
str()將對(duì)象轉(zhuǎn)化為適于閱讀的形式
列表无拗、元組、字典相關(guān)函數(shù)
dict() 生成字典昧碉,dict()生成空字典英染,dict(a='e', b='f', c='g'),傳入關(guān)鍵字被饿,{'a':'e', 'b':'f', 'c':'g'}四康,dict(zip(['one', 'two', 'three'], [1, 2, 3])),dict([('one', 1), ('two', 2), ('three', 3)])
list()將元組轉(zhuǎn)換為列表
tuple()將列表轉(zhuǎn)換為元組
all()狭握,any()的參數(shù)都是元組或列表闪金,區(qū)別:all()如果所有元素都不是0、''论颅、False或者iterable為空哎垦,返回True,否則返回False恃疯;any()如果所有元素為空漏设、0、False則返回False今妄,如果不都為空郑口、0鸳碧、False,則返回True犬性;all()參數(shù)是空列表或空元組杆兵,返回True,any()返回False仔夺。
slice(stop)琐脏,或slice(start, stop[, step])實(shí)現(xiàn)切片對(duì)象。print([1, 2, 3, 4, 5, 6, 7][slice(3)])
filter()用于過(guò)濾序列缸兔,函數(shù)返回filter對(duì)象
eg日裙。
def is_odd(n):
? ? ? return n % 2 == 1
aList = filter(is_odd, [1, 2, 3, 4, 5, 6, 7])
print(list(aList))
迭代相關(guān)函數(shù)
next(iterator[,defaul]) 返回迭代器的下一個(gè)項(xiàng)目。
sorted(iterable, key=None, reverse=False)惰蜜,key用來(lái)進(jìn)行比較的元素昂拂,指定可迭代對(duì)象的一個(gè)元素來(lái)進(jìn)行排序,reverse排序規(guī)則抛猖,True為降序格侯,F(xiàn)alse為升序。和list.sort()的區(qū)別:sorted會(huì)修改原始的list财著,list.sort()返回為None联四;另外list.sort()只為list定義,sorted函數(shù)可以接受任何iterable撑教。eg:print(sorted({1:'A', 2:"B", 3:"C"}))
iter()用于生成迭代器
面向?qū)ο笙嚓P(guān)函數(shù)
setattr(object, name, value)朝墩,getattr(object, name)用于設(shè)置和獲取屬性,該屬性必須存在伟姐。hasattr(object, name)用于判斷屬性是否存在收苏。
delattr(object, attr) 用于刪除屬性
hasattr(object, attr)用于判斷一個(gè)對(duì)象是否有某一屬性
id()用于獲取對(duì)象的內(nèi)存地址
isinstance() 用于判斷一個(gè)對(duì)象是否是某一類型,類似type愤兵,但type不會(huì)認(rèn)為子類是父類類型鹿霸,isinstance會(huì)認(rèn)為子類是父類類型
issubclass(B, A)用于判斷B是否是A的子類,A秆乳、B都是類名
super() 用于調(diào)用父類的一個(gè)方法
staticmethod修飾符懦鼠,聲明靜態(tài)方法,類不需要實(shí)例化就可以調(diào)用該方法矫夷。
classmethod修飾符葛闷,聲明類方法,類方法的第一個(gè)參數(shù)是cls双藕,和實(shí)例方法的self意義相同淑趾。如果有繼承關(guān)系,子類方法調(diào)用類方法時(shí)忧陪,傳遞的類變量cls時(shí)子類扣泊,而非父類近范。
class A:
? ? ? ?@classmethod
? ? ? ? def cm(cls):
? ? ? ? ? ? ? print('類方法調(diào)用者:', cls.__name__)
? ? ? ? @staticmethod
????????def sm():
? ? ? ? ? ? ? print('靜態(tài)方法調(diào)用')
class B(A):
? ? ? ?pass
A.cm()
B.cm()
A.sm()
B.sm()
其它
open()用于打開(kāi)一個(gè)文件,創(chuàng)建一個(gè)file對(duì)象
format()格式化函數(shù)
zip()將可迭代的對(duì)象作為參數(shù)延蟹,將對(duì)象中對(duì)應(yīng)的元素打包成一個(gè)個(gè)元組评矩,然后返回zip對(duì)象。如果各個(gè)迭代器的元素個(gè)數(shù)不一致阱飘,則zip對(duì)象包含的列表長(zhǎng)度與最短的對(duì)象相同斥杜,利用*號(hào)操作符,可以將元組解壓為zip對(duì)象沥匈。
a = [1, 2, 3]
b = ['one', 'two', 'three']
zipped = zip(a, b)
zipList = []
for it in zipped:
? ? ?print(it)
? ? ?zipList.append(it)
print(zipList)
for it in zip(*zipList):
? ? ?print(it)
range(stop)
range(start, stop[,step])
返回可迭代對(duì)象蔗喂,start默認(rèn)為0,step默認(rèn)為1高帖。