course
In Python, you can use a list() function which creates a collection that can be manipulated for your analysis. This collection of data is called a list object.
While all methods are functions in Python, not all functions are methods. There is a key difference between functions and methods in Python. Functions take objects as inputs. Methods in contrast act on objects.
Python offers the following list functions:
- sort(): Sorts the list in ascending order.
- type(list): It returns the class type of an object.
- append(): Adds a single element to a list.
- extend(): Adds multiple elements to a list.
- index(): Returns the first appearance of the specified value.
- max(list): It returns an item from the list with max value.
- min(list): It returns an item from the list with min value.
- len(list): It gives the total length of the list.
- list(seq): Converts a tuple into a list.
- cmp(list1, list2): It compares elements of both lists list1 and list2.
- filter(fun,list): filter the list using the Python function.
- Python List Functions & Methods
Python sort list method
The sort() method is a built-in Python method that, by default, sorts the list in ascending order. However, you can modify the order from ascending to descending by specifying the sorting criteria.
Sort a list in ascending order
Let's say you want to sort the element in prices in ascending order. You would type prices followed by a . (period) followed by the method name, i.e., sort including the parentheses.
prices = [238.11, 237.81, 238.91]
prices.sort()
print(prices)
# [237.81, 238.11, 238.91]
Python list type() function
For the type() function, it returns the class type of an object.
Check the data type of a list
Here we will see what type of both fam and fam2 are:
fam = ["liz", 1.73, "emma", 1.68, "mom", 1.71, "dad", 1.89]
print(fam)
# ['liz', 1.73, 'emma', 1.68, 'mom', 1.71, 'dad', 1.89]
Let's see what the type of the object is:
fam = ["liz", 1.73, "emma", 1.68, "mom", 1.71, "dad", 1.89]
print(type(fam))
# <class 'list'>
Now, let's look at fam2.
fam2 = [["liz", 1.73],
["emma", 1.68],
["mom", 1.71],
["dad", 1.89]]
print(fam2)
# [['liz', 1.73], ['emma', 1.68], ['mom', 1.71], ['dad', 1.89]]
Let's see what the type of the object is:
fam2 = [["liz", 1.73],
["emma", 1.68],
["mom", 1.71],
["dad", 1.89]]
print(type(fam2))
# <class 'list'>
These calls show that both fam and fam2 are, in fact, lists.
Python list append method
The append() method will add certain content you enter to the end of the elements you select.
Add a single element to a list
In this example, let's extend the string by adding "April" to the list with the method append(). Using append() will increase the length of the list by 1.
months = ['January', 'February', 'March']
months.append('April')
print(months)
# ['January', 'February', 'March', 'April']
Python list extend method
The extend() method increases the length of the list by the number of elements that are provided to the method, so if you want to add multiple elements to the list, you can use this method.
Add multiple elements to a list
x = [1, 2, 3]
x.extend([4, 5])
print(x)
# [1, 2, 3, 4, 5]
Python list index method
The index() method returns the first appearance of the specified value.
Find an element's position
In the below example, let's look at the index of February in the list months.
months = ['January', 'February', 'March']
prices = [238.11, 237.81, 238.91]
print(months.index('February'))
# 1
This method helps identify that February is located at index 1. Now we can access the corresponding price of February using this index.
months = ['January', 'February', 'March']
prices = [238.11, 237.81, 238.91]
print(prices[1])
# 237.81
Python list max function
The max() function will return the highest value of the inputted values.
Find the largest value in a list
In this example, we will look to use the max() function to find the maximum price in the list named price.
# Find the maximum price in the list price
prices = [159.54, 37.13, 71.17]
price_max = max(prices)
print(price_max)
# 159.54
Python list min function
The min() function will return the lowest value of the inputted values.
Find the smallest value in a list
In this example, you will find the month with the smallest consumer price index (CPI).
To identify the month with the smallest consumer price index, you first apply the min() function on prices to identify the min_price. Next, you can use the index method to find the index location of the min_price. Using this indexed location on months, you can identify the month with the smallest consumer price index.
months = ['January', 'February', 'March']
prices = [238.11, 237.81, 238.91]
# Identify min price
min_price = min(prices)
# Identify min price index
min_index = prices.index(min_price)
# Identify the month with min price
min_month = months[min_index]
print(min_month)
# February
Python list len function
The len() function shows the number of elements in a list. In the below example, we will look at stock price data again using integers.
Count the elements in a list
stock_price_1 = [50.23]
stock_price_2 = [75.14, 85.64, 11.28]
print('stock_price_1 length is', len(stock_price_1))
print('stock_price_2 length is', len(stock_price_2))
# stock_price_1 length is 1
# stock_price_2 length is 3
Python list() function
The list() function takes an iterable construct and turns it into a list. Here is the syntax:
list([iterable])
Convert a tuple to a list
In the below example, you will be working with stock price data. Let's print out an empty list, convert a tuple into a list, and finally, print a list as a list.
# empty list
print(list())
# tuple of stock prices
stocks = ('238.11', '237.81', '238.91')
print(list(stocks))
# list of stock prices
stocks_1 = ['238.11', '237.81', '238.91']
print(list(stocks_1))
# []
# ['238.11', '237.81', '238.91']
# ['238.11', '237.81', '238.91']
Python filter() function
For the filter() function, it takes a function and the lists and returns an iterator of filtered elements. You can either create a Python filter function or use a lambda function to get a filtered list.
Note: you can also use loops, list comprehension, and string pattern matching to get a filter list.
Filter list elements by a condition
First, we will create a filter function that will return boolean values. It will consist of simple logical functions. In our case, we will filter item prices greater than 350. Then, we will use filter() to apply the function on item_price list and get an iterator of filtered elements.
To access the filtered elements, we can either extract value using a for loop or convert an iterator into the lists.
def filter_price(price):
if (price > 350):
return True
else:
return False
item_price = [230, 400, 450, 350, 370]
# applying filter function
filtered_price = filter(filter_price, item_price)
print(list(filtered_price))
# [400, 450, 370]
You can also convert your code into a single line using lambda function and get filtered elements.
item_price = [230, 400, 450, 350, 370]
# lambda function with filter()
filtered_price = filter(lambda a: a > 350, item_price)
print(list(filtered_price))
# [400, 450, 370]
To learn more about list methods and functions, please see this video from our course Introduction to Python for Finance.
This content is taken from DataCamp's Introduction to Python for Finance course by Adina Howe.

As a certified data scientist, I am passionate about leveraging cutting-edge technology to create innovative machine learning applications. With a strong background in speech recognition, data analysis and reporting, MLOps, conversational AI, and NLP, I have honed my skills in developing intelligent systems that can make a real impact. In addition to my technical expertise, I am also a skilled communicator with a talent for distilling complex concepts into clear and concise language. As a result, I have become a sought-after blogger on data science, sharing my insights and experiences with a growing community of fellow data professionals. Currently, I am focusing on content creation and editing, working with large language models to develop powerful and engaging content that can help businesses and individuals alike make the most of their data.
Python List Functions & Methods FAQs
What is a list in Python?
One of the main built-in data structures in Python is storing any number of items. The main characteristics of Python lists are that they are iterable, ordered, indexed, mutable, and allow duplicated values.
How to make a list in Python?
Place a sequence of items inside square brackets and separate them by comma, e.g., ['cake', 'ice-cream', 'donut']. Alternatively, use the list() built-in function with double brackets: list(('cake', 'ice-cream', 'donut')). To create an empty list, use empty square brackets ([]) or the list() function without passing any argument (list()). Usually, a Python list is assigned to a variable for further usage.
What is a Python list used for?
When we need to keep together multiple related items placed in a defined order, possibly of heterogeneous data types and/or with duplicates. We then want to be able to modify those items, add or remove items, and apply the same operations on several values at once.
What kinds of objects can a Python list contain?
Any kinds of Python objects, both primitive (integers, floats, strings, boolean) and complex (other lists, tuples, dictionaries, etc.). There can be different data types in one Python list, e.g., ['cake', 1, 3.14, [0, 2]], which makes this data structure very flexible.
Is a Python list ordered?
Yes. The items of a Python list have a fixed order, which makes this data structure also indexed. Each item of a Python list has an index corresponding to its position in the list, starting from 0 for the first item. The last item of a Python list has the index N-1, where N is the number of items in the list.
Is a Python list mutable?
Yes. The values of the items in a Python list can be modified after the list is created, with no need to reassign the list to a variable. The items can also be added or removed, resulting in dynamically changing the size of the list.
Does a Python list allow duplicate values?
Yes. Because these data structures are ordered and indexed, a Python list can contain any number of repeated items.
What is the difference between Python append() and extend()?
While the append() method allows adding a single item at the end of a Python list, the extend() method allows adding multiple items. In the first case, the length of a list is increased by 1; in the second, the length is increased by the number of added items.