type--類,object-or-type--類,一般是self
創(chuàng)新互聯(lián)提供成都網(wǎng)站建設(shè)、成都網(wǎng)站制作、網(wǎng)頁(yè)設(shè)計(jì),成都品牌網(wǎng)站建設(shè),廣告投放等致力于企業(yè)網(wǎng)站建設(shè)與公司網(wǎng)站制作,十年的網(wǎng)站開(kāi)發(fā)和建站經(jīng)驗(yàn),助力企業(yè)信息化建設(shè),成功案例突破成百上千家,是您實(shí)現(xiàn)網(wǎng)站建設(shè)的好選擇.
運(yùn)行發(fā)現(xiàn):super().add(x) 與A.add(self,x)執(zhí)行結(jié)果一致;但涉及多繼承,發(fā)現(xiàn)super()只調(diào)用一次
在super機(jī)制里可以保證公共父類僅被執(zhí)行一次,至于執(zhí)行的順序,是按照MRO(Method Resolution Order):方法解析順序 進(jìn)行的
super()可以調(diào)用父類中的任何方法,超(父類的父類)類的任何方法;可重寫(xiě)父類同名的 init 函數(shù),及其他方法
在任何時(shí)候繼承類和重寫(xiě)方法的,我們應(yīng)當(dāng)用到args, kwargs將接收到的位置參數(shù)和鍵值參數(shù)給父類方法
1.1 例如:print(hex(2))案例
1.2 輸出函數(shù):print(hex(2))
1.3 輸出結(jié)果:0x2
1.4 解析說(shuō)明:返回16進(jìn)制的數(shù)。
2.1 例如:print(chr(10))案例
2.2 輸出函數(shù):print(chr(10))
2.3 輸出結(jié)果:0o12
2.4 解析說(shuō)明:返回當(dāng)前整數(shù)對(duì)應(yīng)的ASCll碼
3.1 例如:print(ord("b"))案例
3.2 輸出函數(shù):print(ord("b"))
3.3 輸出結(jié)果:98
3.4 解析說(shuō)明:返回當(dāng)前ASCll碼的10進(jìn)制數(shù)
4.1 例如:print(chr(97))
4.2 輸出函數(shù):print(chr(97))
4.3 輸出結(jié)果:b
4.4 解析說(shuō)明:返回當(dāng)前ASCll碼的10進(jìn)制數(shù)。
案例一:給你一個(gè)字符串,s = 'hello kitty'
1.1 輸出函數(shù):print(s.capitalize())
1.2 輸出結(jié)果:0x2
1.3 解析說(shuō)明:返回16進(jìn)制的數(shù)。
2.1輸出函數(shù):print(s.replace('kitty','kuang'))
2.2 輸出結(jié)果:hello kuang
2.3 解析說(shuō)明:替換功能,將kitty換成kuang。
2.4 輸出函數(shù):print(s.replace('4','KK'))
2.5 輸出結(jié)果:12KK12KK
2.6 解析說(shuō)明:所有的4都替換成KK
2.7 輸出函數(shù):print(s.replace('4','KK'))
2.8 輸出結(jié)果:12KK12KK124
2.9 解析說(shuō)明:將前兩個(gè)的4替換成go
案例一:給你一個(gè)字符串,ip = '192.168.1.1'
3.1 輸出函數(shù):print(ip.split(','))
3.2 輸出結(jié)果:['192.168.1.1']
3.3 解析說(shuō)明:將字符串分割成列表
案例一:給你一個(gè)字符串,ip = '192.168.1.1'
3.3 輸出函數(shù):print(ip.split(',',2))
3.4 輸出結(jié)果:['192.168.1.1']
3.5 解析說(shuō)明:從第二個(gè)開(kāi)始分割成列表
8個(gè)超好用內(nèi)置函數(shù)set(),eval(),sorted(),reversed(),map(),reduce(),filter(),enumerate()
python中有許多內(nèi)置函數(shù),不像print那么廣為人知,但它們卻異常的強(qiáng)大,用好了可以大大提高代碼效率。
這次來(lái)梳理下8個(gè)好用的python內(nèi)置函數(shù)
1、set()
當(dāng)需要對(duì)一個(gè)列表進(jìn)行去重操作的時(shí)候,set()函數(shù)就派上用場(chǎng)了。
用于創(chuàng)建一個(gè)集合,集合里的元素是無(wú)序且不重復(fù)的。集合對(duì)象創(chuàng)建后,還能使用并集、交集、差集功能。
2、eval()之前有人問(wèn)如何用python寫(xiě)一個(gè)四則運(yùn)算器,輸入字符串公式,直接產(chǎn)生結(jié)果。用eval()來(lái)做就很簡(jiǎn)單:eval(str_expression)作用是將字符串轉(zhuǎn)換成表達(dá)式,并且執(zhí)行。
3、sorted()在處理數(shù)據(jù)過(guò)程中,我們經(jīng)常會(huì)用到排序操作,比如將列表、字典、元組里面的元素正/倒排序。這時(shí)候就需要用到sorted() ,它可以對(duì)任何可迭代對(duì)象進(jìn)行排序,并返回列表。對(duì)列表升序操作:
對(duì)元組倒序操作:
使用參數(shù):key,根據(jù)自定義規(guī)則,按字符串長(zhǎng)度來(lái)排序:
根據(jù)自定義規(guī)則,對(duì)元組構(gòu)成的列表進(jìn)行排序:
4、reversed()如果需要對(duì)序列的元素進(jìn)行反轉(zhuǎn)操作,reversed()函數(shù)能幫到你。reversed()接受一個(gè)序列,將序列里的元素反轉(zhuǎn),并最終返回迭代器。
5、map()做文本處理的時(shí)候,假如要對(duì)序列里的每個(gè)單詞進(jìn)行大寫(xiě)轉(zhuǎn)化操作。這個(gè)時(shí)候就可以使用map()函數(shù)。
map()會(huì)根據(jù)提供的函數(shù),對(duì)指定的序列做映射,最終返回迭代器。也就是說(shuō)map()函數(shù)會(huì)把序列里的每一個(gè)元素用指定的方法加工一遍,最終返回給你加工好的序列。舉個(gè)例子,對(duì)列表里的每個(gè)數(shù)字作平方處理:
6、reduce()前面說(shuō)到對(duì)列表里的每個(gè)數(shù)字作平方處理,用map()函數(shù)。那我想將列表里的每個(gè)元素相乘,該怎么做呢?這時(shí)候用到reduce()函數(shù)。
reduce()會(huì)對(duì)參數(shù)序列中元素進(jìn)行累積。第一、第二個(gè)元素先進(jìn)行函數(shù)操作,生成的結(jié)果再和第三個(gè)元素進(jìn)行函數(shù)操作,以此類推,最終生成所有元素累積運(yùn)算的結(jié)果。再舉個(gè)例子,將字母連接成字符串。
你可能已經(jīng)注意到,reduce()函數(shù)在python3里已經(jīng)不再是內(nèi)置函數(shù),而是遷移到了functools模塊中。這里把reduce()函數(shù)拎出來(lái)講,是因?yàn)樗匾恕?/p>
7、filter()一些數(shù)字組成的列表,要把其中偶數(shù)去掉,該怎么做呢?
filter()函數(shù)輕松完成了任務(wù),它用于過(guò)濾序列,過(guò)濾掉不符合條件的元素,返回一個(gè)迭代器對(duì)象。filter()函數(shù)和map()、reduce()函數(shù)類似,都是將序列里的每個(gè)元素映射到函數(shù),最終返回結(jié)果。我們?cè)僭囋?,如何從許多單詞里挑出包含字母w的單詞。
8、enumerate()這樣一個(gè)場(chǎng)景,同時(shí)打印出序列里每一個(gè)元素和它對(duì)應(yīng)的順序號(hào),我們用enumerate()函數(shù)做做看。
enumerate翻譯過(guò)來(lái)是枚舉、列舉的意思,所以說(shuō)enumerate()函數(shù)用于對(duì)序列里的元素進(jìn)行順序標(biāo)注,返回(元素、索引)組成的迭代器。再舉個(gè)例子說(shuō)明,對(duì)字符串進(jìn)行標(biāo)注,返回每個(gè)字母和其索引。
python簡(jiǎn)單的函數(shù)定義和用法實(shí)例
這篇文章主要介紹了python簡(jiǎn)單的函數(shù)定義和用法,實(shí)例分析了Python自定義函數(shù)及其使用方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
具體分析如下:
這里定義了一個(gè)溫度轉(zhuǎn)換的函數(shù)及其用法。
def convertTemp(temp, scale):
if scale == "c":
return (temp - 32.0) * (5.0/9.0)
elif scale == "f":
return temp * 9.0/5.0 + 32
temp = int(input("Enter a temperature: "))
scale = input("Enter the scale to convert to: ")
converted = convertTemp(temp, scale)
print("The converted temp is: " + str(converted))
希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。