python找出幾個(gè)數(shù)中最大值的方法:
創(chuàng)新互聯(lián)公司專注于南通企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,商城開發(fā)。南通網(wǎng)站建設(shè)公司,為南通等地區(qū)提供建站服務(wù)。全流程按需網(wǎng)站設(shè)計(jì),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)
1、簡單的使用if-else進(jìn)行判斷
List = [12, 34, 2, 0, -1]
Max = List[0] # 定義變量Max用來存儲(chǔ)最大值,初始值賦值為列表中任意一個(gè)值
for i in List:
if i Max:
Max = i
print("這個(gè)列表中最大值為:", Max)
2、使用max函數(shù)來完成
List = [1, 34, 5, 6, 98]
Max = max(List)
print("這個(gè)列表中最大值為:", Max)
max() 方法返回給定參數(shù)的最大值,參數(shù)可以為序列。
以下是 max() 方法的語法:
max( x, y, z, .... )
x -- 數(shù)值表達(dá)式。
y -- 數(shù)值表達(dá)式。
z -- 數(shù)值表達(dá)式。
max () 函數(shù)可以檢查列表中的最大值,比如下面的代碼:
nums = [1, 2]
print(max(nums))
就可以找到最大值2。最大值的用法應(yīng)該只有這個(gè)了,如果想要更多的操作可以自己編輯。
求可迭代對(duì)象(列表、元組、集合等都是)的最大值可以用內(nèi)置的max函數(shù)。
如:
print(max([1,3,5,99,2]))
print(max((1,3,5,99,2)))
print(max({1,3,5,99,2}))
輸出都是99。
enumerate()函數(shù)用于將一個(gè)可遍歷的數(shù)據(jù)對(duì)象(如列表、元組或字符串)組合為一個(gè)索引序列,同時(shí)列出數(shù)據(jù)和數(shù)據(jù)下標(biāo)。
x = [3, 2.2, 7.4, 6, 4]
list(enumerate(x))
# 輸出 [(0, 3), (1, 2.2), (2, 7.4), (3, 6), (4, 4)]
operator.itemgetter()函數(shù)用于獲取對(duì)象的哪些維的數(shù)據(jù),參數(shù)為想要取的一些維度序號(hào)。
x = [3, 2.2, 7.4, 6, 4]
b1 = operator.itemgetter(2, 1)
b1(x) # 輸出 (7.4, 2.2)
b2 = operator.itemgetter(3)
b2(x) # 輸出 6
max()函數(shù)有一個(gè)應(yīng)用很巧妙的參數(shù)key,在這里定義為operator.itemgetter(1),表示對(duì)enumerate(x)每個(gè)元素的第一維做比較(從0維開始),然后返回第一維值最大的元素,即包含索引和數(shù)值。
key參數(shù)還有其他的巧妙應(yīng)用:
# 獲取數(shù)組中絕對(duì)值最大的數(shù)
x = [3, 2.2, -7.4, 6, 4]
max(x, key=abs) # 返回 -7.4
# lambda表達(dá)式形式
x = [3, 2.2, -7.4, 6, 4]
max(x, key=lambda x: abs(x)) # 返回 -7.
可以使用 Python 中內(nèi)置的 max 函數(shù)來求兩個(gè)數(shù)的最大值。例如,你可以寫一個(gè)函數(shù)如下:
def get_max(a, b):
return max(a, b)
然后調(diào)用這個(gè)函數(shù)求 8 和 3 的最大值:
print(get_max(8, 3))? # 輸出 8
注意,這個(gè)函數(shù)不僅可以求整數(shù)的最大值,還可以求小數(shù)、字符串、列表等類型的最大值。