新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:python中序列的屬性實現(xiàn)
在對一個事物進行了解的時候,我們會選擇從它的屬性入手,因為屬性和其的用法有了密切的關(guān)聯(lián)??梢哉f了解了事物的屬性,我們基本上就差不多知道使用的方法了。今天小編為大家?guī)淼氖切蛄械膶傩?,除了我們熟悉的和最小之外,還有和、長度需要我們掌握,下面一起看看序列屬性的具體內(nèi)容吧。

序列值:max
序列最小值:min
序列的和: sum
序列長度: len
基本用法:向這四個函數(shù)中傳入序列,可以得到對應(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ù),可以直接傳入生成器(不需要括號)作為參數(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)于把序列中每一個元素 item 先傳入函數(shù) key 中,將函數(shù)返回的數(shù)值作為判斷對象大小的依據(jù)。
def foo(x): return 1. / x max(seq, key = foo) # 21
對于我們自定義的類型,必須實現(xià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ù)學(xué)中的函數(shù)求值的理解,因為本篇的屬性代碼需要結(jié)合函數(shù)一起使用,所以會有相像的地方。具體的步驟都在上方,小伙伴們可以跟著小編的思路進行學(xué)習(xí)。
文章名稱:創(chuàng)新互聯(lián)Python教程:python中序列的屬性實現(xiàn)
網(wǎng)頁網(wǎng)址:http://m.fisionsoft.com.cn/article/cocsdhj.html


咨詢
建站咨詢
