Python 列表 max() 方法



Python 列表的max()方法比較列表中的元素並返回最大值的元素。

如果列表中的元素是數字,則按數值進行比較;但如果列表包含字串,則按字母順序進行比較。

注意:此方法中的比較僅在相同資料型別之間執行。如果列表包含多種型別的元素,則會引發 TypeError。

語法

以下是 Python 列表max()方法的語法:

max(list)

引數

  • list - 要從中返回最大值元素的列表。

返回值

此方法從列表中返回最大值。

示例

以下示例顯示了 Python 列表 max() 方法的用法。該方法對建立的列表的字串元素執行字母順序比較。

list1 = ['123', 'xyz', 'zara', 'abc']
print("Max value element : ", str(max(list1)))

當我們執行上述程式時,它會產生以下結果:

Max value element : zara

示例

現在讓我們在以下示例中查詢僅包含數字的列表中的最大數字。

list2 = [456, 700, 200]
print("Max value element : ", str(max(list2)))

如果我們編譯並執行給定的程式,則輸出將顯示如下:

Max value element : 700

示例

如果列表包含多個數據型別元素,則該方法無法檢索最大值元素,因為無法在兩種不同資料型別之間進行比較。

list1 = [123, 'xyz', 'abc', 456]
print("Max value element : ", str(max(list1)))

編譯並執行上述程式後,將引發 TypeError。

Traceback (most recent call last):
  File "main.py", line 2, in 
    print("Max value element : ", str(max(list1)))
TypeError: '>' not supported between instances of 'str' and 'int'

示例

在此示例中,讓我們考慮一個此方法可能派上用場的即時場景。我們建立兩個列表:一個包含學生姓名,另一個包含他們在相應索引中的分數。使用 max() 方法找到最高分,並使用 index() 方法檢索具有最高分的學生的相應索引。獲得最高分的那位學生必須被宣佈為第一名。

marks = [880, 946, 934, 989, 781]
student = ['Jason', 'John', 'Alex', 'Chris', 'Alice']
rank_1 = max(marks)
name_id = marks.index(max(marks))
print(str(student[name_id]), "ranked first with", str(rank_1), "marks")

如果我們執行上述程式,則輸出將如下所示:

Chris ranked first with 989 marks
python_lists.htm
廣告