Given a list of numbers, the task is to write a Python program to find the second largest number in given list.**Examples:**

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

**Method 1:** Sorting is an easier but less optimal method. Given below is an O(n) algorithm to do the same.

## 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))` |

*chevron_right*

*filter_none*

**Output**

Second highest number is : 45

**Method 2:** Sort the list in ascending order and print the second last element in the list.

## 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` `])` |

*chevron_right*

*filter_none*

**Output**

Second largest element is: 45

**Method 3:** By removing the max element from the list

## 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))` |

*chevron_right*

*filter_none*

**Output**

45

**Method 4:** Find max list element on inputs provided by the user

## 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` `])` |

*chevron_right*

*filter_none*

**Output: **

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

Attention geek! Strengthen your foundations with the **Python Programming Foundation** Course and learn the basics.

To begin with, your interview preparations Enhance your Data Structures concepts with the **Python DS** Course.

## Recommended Posts:

- Python | Largest, Smallest, Second Largest, Second Smallest in a List
- Python Program to Print Largest Even and Largest Odd Number in a List
- Sort the values of first list using second list in Python
- Python | Replace elements in second list with index of same element in first list
- Python - Filter the List of String whose index in second List contaons the given Substring
- Second largest value in a Python Dictionary
- Python program to sort a list of tuples by second Item
- Python program to find largest number in a list
- Python - Find first element by second in tuple List
- Python program to find second maximum value in Dictionary
- Python program to find N largest elements from a list
- Python | Sort a list according to the second element in sublist
- Python | Group by matching second tuple value in list of tuples
- Python - Group first elements by second elements in Tuple list
- Python - Sort by Frequency of second element in Tuple List
- Python Program for Find largest prime factor of a number
- Python | Find frequency of largest element in list
- Python | Largest number possible from list of given numbers
- Python program to create a list of tuples from given list having number and its cube in each tuple
- Python Program to find largest element in an array

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.