# Python程序如何实现在列表中查找第二大数字？

2021年3月28日16:03:44 发表评论 1,557 次浏览

## 本文概述

``````Input: list1 = [10, 20, 4]
Output: 10

Input: list2 = [70, 11, 20, 4, 100]
Output: 70``````

## Python3

``````# Python program to find second largest
# number in a list

# list of numbers - length of
# list should be at least 2
list1 = [ 10 , 20 , 4 , 45 , 99 ]

mx = max (list1[ 0 ], list1[ 1 ])
secondmax = min (list1[ 0 ], list1[ 1 ])
n = len (list1)
for i in range ( 2 , n):
if list1[i]>mx:
secondmax = mx
mx = list1[i]
elif list1[i]>secondmax and \
mx ! = list1[i]:
secondmax = list1[i]

print ( "Second highest number is : " , \
str (secondmax))``````

``Second highest number is :  45``

## Python3

``````# Python program to find largest
# number in a list

# list of numbers
list1 = [ 10 , 20 , 4 , 45 , 99 ]

# sorting the list
list1.sort()

# printing the second last element
print ( "Second largest element is:" , list1[ - 2 ])``````

``Second largest element is: 45``

## Python3

``````# Python program to find second largest
# number in a list

# list of numbers
list1 = [ 10 , 20 , 4 , 45 , 99 ]

# new_list is a set of list1
new_list = set (list1)

# removing the largest element from temp list
new_list.remove( max (new_list))

# elements in original list are not changed
# print(list1)

print ( max (new_list))``````

``45``

## Python3

``````# Python program to find second largest
# number in a list

# creating empty list
list1 = []

# asking number of elements to put in list
num = int ( input ( "Enter number of elements in list: " ))

# iterating till num to append elements in list
for i in range ( 1 , num + 1 ):
ele = int ( input ( "Enter elements: " ))
list1.append(ele)

'''
# sort the list
list1.sort()

# print second maximum element
print("Second largest element is:", list1[-2])

'''

# print second maximum element using sorted() method
print ( "Second largest element is:" , sorted (list1)[ - 2 ])``````

``````Enter number of elements in list: 4
Enter elements: 12
Enter elements: 19
Enter elements: 1
Enter elements: 99
Second Largest element is: 19``````