Python List max() 方法



Python List max() 方法比较列表的元素并返回最大值元素。

如果列表中的元素是数字,则按数字进行比较;但是,如果列表包含字符串,则按字母顺序进行比较。

注意:此方法中的比较仅在相同的数据类型之间执行。如果列表包含多种类型的元素,则会引发 TypeError。

语法

以下是 Python List max() 方法的语法 -


 max(list)

参数

  • list − 要从中返回最大值元素的列表。

返回值

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

以下示例显示了 Python List 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