您的位置:

Python 程序:查找列表中的第二大数字

写一个 Python 程序,用一个实际例子找出列表中的第二大数字。

Python 程序在列表中查找第二大数字示例 1

这个 python 程序允许用户输入长度。接下来,我们使用 For 循环在 Python 中向列表中添加数字。

python 中的排序函数以升序对列表元素进行排序。接下来,我们使用 Python 索引位置来打印列表中的最后一个元素。

NumList = []
Number = int(input("Please enter the Total Number of List Elements: "))
for i in range(1, Number + 1):
    value = int(input("Please enter the Value of %d Element : " %i))
    NumList.append(value)

NumList.sort()

print("The Largest Element in this List is : ", NumList[Number - 2])

Python 程序在列表中查找第二大数字示例 2

这个程序按照升序对元素进行排序。接下来,我们使用反转功能来反转列表项。最后,我们使用索引位置 1 来打印列表中的第二个元素。

NumList = []
Number = int(input("Please enter the Total Number of List Elements: "))
for i in range(1, Number + 1):
    value = int(input("Please enter the Value of %d Element : " %i))
    NumList.append(value)

NumList.sort()
NumList.reverse()
print("The Largest Element in this List is : ", NumList[1])
Please enter the Total Number of List Elements: 5
Please enter the Value of 1 Element : 20
Please enter the Value of 2 Element : 56
Please enter the Value of 3 Element : 78
Please enter the Value of 4 Element : 97
Please enter the Value of 5 Element : 60
The Largest Element in this List is :  78

Python 程序在列表中查找第二大数字示例 3

在这个程序中,我们没有使用任何内置功能,比如排序或者反转功能。为此,我们使用For Loop

NumList = []
Number = int(input("Please enter the Total Number of List Elements: "))

for i in range(1, Number + 1):
    value = int(input("Please enter the Value of %d Element : " %i))
    NumList.append(value)

first = second = NumList[0]
for j in range(1, Number):
    if(NumList[j] > first):
        second = first
        first = NumList[j]
    elif(NumList[j] > second and NumList[j] < first):
        second = NumList[j]

print("The Largest Element in this List is : ", first)
print("The Second Largest Element in this List is : ", second)
Please enter the Total Number of List Elements: 4
Please enter the Value of 1 Element : 55
Please enter the Value of 2 Element : 57
Please enter the Value of 3 Element : 22
Please enter the Value of 4 Element : 3
The Largest Element in this List is :  57
The Second Largest Element in this List is :  55

从上面的 Python 程序返回列表截图中的第二大数字,可以观察到用户插入的值是

NumList[4] = {55,57,22,3} 第一个=第二个= NumList[0] = 55

第一次迭代–对于范围(1,4)中的 1–条件为真 因此,它开始在循环内执行 If 语句,直到条件失败。 如果 for 循环内的(NumList[j] > first)为 True,因为(57>55) first = first = 55 first = NumList[1]= 57

第二次迭代:对于范围(1,4)中的 2–条件为真 如果(NumList[2] >优先)=(22>57)–条件为假。因此,它进入 elif 语句 elif(NumList[2] >第二,NumList[2] <第一) elif(22 > 55 和 22<57)–条件为假

第三次迭代:对于范围(1,4)中的 3–条件为真 如果(3>57)–条件为假 elif(3 > 55 和 3<57)–条件为假

第四次迭代:对于范围(1,4)中的 4–条件为假。所以,它从循环中退出。