Python - 给定一个整数列表,查找是否存在第三大的数
当需要在一个整数列表中找到第三大的数时,定义一个方法,该方法将一个列表作为参数。它初始化一个浮点数列表为无穷大。遍历列表中的值,并与无穷大的值进行比较。根据结果,在控制台上显示输出。
示例
下面是相同内容的演示
def third_max_num(my_num): my_result = [float('-inf'), float('-inf'), float('-inf')] for num in my_num: if num not in my_result: if num > my_result[0]: my_result = [num, my_result[0], my_result[1]] elif num > my_result[1]: my_result = [my_result[0], num, my_result[1]] elif num > my_result[2]: my_result = [my_result[0], my_result[1], num] if float('-inf') in my_result: print(max(my_num)) else: print(my_result[2]) my_list = [45, 31, 78, 9, 0, 54, 12, 18] print("The list is :") print(my_list) print("The third maximum number is :") third_max_num(my_list)
输出
The list is : [45, 31, 78, 9, 0, 54, 12, 18] The third maximum number is : 45
解释
定义了一个名为“third_max_num”的方法,该方法将一个列表作为参数。
定义了一个包含三个无穷大浮点值的列表。
迭代列表中的值,如果列表中的数字不在无穷大数字列表中,则将列表中的值与无穷大列表的第一个元素进行比较。
如果列表元素更大,则输出为数字、无穷大列表中的第一个和第二个值的列表。
对列表的所有三个无穷大值执行相同操作。
如果最终输出中存在无穷大值,则显示这些数字中的最大值作为输出。
在函数外部,定义一个列表并在控制台上显示。
通过将此列表作为参数来调用该方法。
在控制台上显示输出。
广告