小編給大家分享一下python中序列的屬性怎樣實(shí)現(xiàn),相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
公司主營(yíng)業(yè)務(wù):成都做網(wǎng)站、網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。創(chuàng)新互聯(lián)推出肥鄉(xiāng)免費(fèi)做網(wǎng)站回饋大家。
序列最大值:max
序列最小值:min
序列的和: sum
序列長(zhǎng)度: len
基本用法:向這四個(gè)函數(shù)中傳入序列,可以得到對(duì)應(yīng)屬性。
import random random.seed(21) seq = [random.randint(0, 100) for i in range(10)] print(seq) # [21, 53, 88, 53, 81, 36, 61, 27, 60, 65] print(max(seq)) # 88 print(min(seq)) # 21 print(sum(seq)) # 545 print(len(seq)) # 10
作為內(nèi)置函數(shù),可以直接傳入生成器(不需要括號(hào))作為參數(shù):
import random random.seed(21) num = max(random.randint(0, 100) for i in range(10)) print(num) # 88
可傳入 key 參數(shù),作為比較大小的依據(jù),相當(dāng)于把序列中每一個(gè)元素 item 先傳入函數(shù) key 中,將函數(shù)返回的數(shù)值作為判斷對(duì)象大小的依據(jù)。
def foo(x): return 1. / x max(seq, key = foo) # 21
對(duì)于我們自定義的類型,必須實(shí)現(xiàn)特殊方法,才能進(jìn)行 len 等操作。
len 代表:len 操作,eq 代表:= 操作,lt 代表 < 操作。
class foo: def __init__(self, num, seq): self.num = num self.seq = seq def __len__(self): return len(self.seq) def __eq__(self, other): return self.num == other.num def __lt__(self, other): return self.num < other.num >>> f1 = foo(18, [1, 4, 6]) >>> f2 = foo(21, [1, 7, 9, 10]) >>> f1 < f2 True >>> f1 > f2 False >>> f1 == f2 False >>> f3 = foo(18, [9, 9, 0, 7]) >>> f1 == f3 True >>> len(f1) 3 >>> len(f2) 4
以上是“python中序列的屬性怎樣實(shí)現(xiàn)”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!