What is List In Python: Learn List in Python (With Example)

What is List In Python: Learn List in Python (With Example)

16 Dec 2024
Intermediate
18.7K Views
26 min read
Learn with an interactive course and practical hands-on labs

Free Data Structures & Algorithms Online Course

Python Lists

Lists in Python are a good place to start your programming journey if you want to become a Python developer or want to make a career in data science. Lists in Python are flexible data structures that allow you to store a collection of items in a single variable. Unlike arrays, lists in Python can hold items of different data types, and their size can change dynamically. You can create lists of lists in Python, enabling multi-dimensional data representation.

In this Python Tutorial, we'll discuss how they work, their various methods and functions, Python Lists, list methods in Python, list operations in Python with examples, lists in Python examples, and how to create a list in Python.

What is a List in Python?

A list is a versatile data structure in Python that may hold a collection of objects of various data types. It is a mutable data type in Python, which means that its elements can be changed after they are created.Lists are represented by square brackets [] and their elements by commas.

Read More - 50 Python Interview Questions and Answers

How to Create a List in Python?

  • In Python, creating a list is as simple as containing a sequence of things within square brackets ([]) and separating each item with a comma.
  • Lists are adaptable data structures that may store a wide range of elements such as integers, texts, floating-point values, and even other lists.

Example of List in Python

fruits = ["apple", "banana", "cherry"]
print(fruits)

This code in the Python Online Compiler creates and prints a list of fruits (apple, banana, and cherry).

Output

['apple', 'banana', 'cherry']

Accessing list elements in Python

  • Accessing list elements in Python requires understanding how to use Python's indexes.
  • With indexing, the developer can access each list element quickly and easily by specifying its position in the list.
  • This can be done using integers or negative numbers. Integers start from 0 and move up to the length of the list minus one, while negative numbers start from -1 and move down to -len(list).
  • Knowing this, accessing individual values or even slices of a list becomes a breeze by accessing the right index or range of indexes.
  • Accessing list elements in Python enables greater control over data manipulation within the code.

Example of Accessing List in Python

fruits = ["apple", "banana", "cherry"]
# Accessing the first element (index 0) in the list
first_fruit = fruits[0]
print(first_fruit)  # Output: apple
# Accessing the second element (index 1) in the list
second_fruit = fruits[1]
print(second_fruit)  # Output: banana

This code creates a list of fruits, then accesses and prints the first entry ("apple") from the list, followed by accessing and printing the second element ("banana").

Output

apple
banana

Read More - Python Developer Salary in India

Update List in Python

  • Updating a list in Python is essential to developing programs and applications.
  • List updates allow the programmer to easily move, alter, and modify data stored in the list such as strings and values.
  • This process helps make programming more time-efficient and can simplify coding tasks.
  • List updates are closely related to array-based operations, but provide an even greater level of control over the representation and use of any given list.
  • Keeping lists updated ensures that Python code runs optimally without disruption or errors.
  • List update syntax within Python language offers a great way for developers to customize their applications for each use case; making python one of the most powerful programming languages available today.

Example of Updating list in Python

fruits = ["apple", "banana", "cherry"]# Updating the second element (index 1) in the list
fruits[1] = "orange"
# Printing the updated list
print(fruits)  # Output: ['apple', 'orange', 'cherry']

The code in this example in the Python Compiler modifies the second entry of the fruits list by giving the value "orange" to fruits[1]. The updated list is then printed from the resulting list.

Output

['apple', 'orange', 'cherry']

Remove element from a list in Python

  • Delete List Elements in Python is easy to do.
  • By using the del() method or the pop() method the developer can eliminate values from a given list.
  • The del() method will allow the user to completely remove an element from a list, while pop() allows its users to temporarily delete an element and store its value in another variable if desired.
  • When using either of these methods it is important to consider their indexing system, which starts at 0, so depending on how many elements a list has will affect the indexes available.
  • Delete List Elements in Python gives the convenience of having complete control over what elements are still part of a list, when changes need to be made it can be done quickly and without complication.

Example of Removing Element from List in Python

fruits = ["apple", "banana", "cherry"]
# Removing the second element (index 1) from the list
removed_fruit = fruits.pop(1)
# Printing the updated list and the removed element
print(fruits)         # Output: ['apple', 'cherry']
print(removed_fruit)  # Output: banana

The pop method is used in this example in the Python Editor to remove the element at index 1 (the second element, "banana") from the fruits list. The removed element is saved in the variable removed_fruit, and both the updated list and the removed element are printed.

Output

['apple', 'cherry']
banana

Reversing a List

  • In Python, reversing a list involves flipping its elements' positions so that the final element becomes the first and vice versa.
  • The 'reverse()' method of a list or the '[::-1]' slicing notation, which both produce a reversed duplicate of the original list, can be used to do this.
There are two methods used for reversing a list:
  1. A list can be reversed by using the reverse() method in Python.
  2. Using the reversed() function:

Example of Reversing a List in Python

fruits = ["apple", "banana", "cherry"]
# Reversing the order of elements in the list
fruits.reverse()
# Printing the reversed list
print(fruits)  # Output: ['cherry', 'banana', 'apple']

In this example, the fruit list is modified by reversing the order of its items using the reverse method. The list is then reversed and printed.

Output

['cherry', 'banana', 'apple']

Basic List Operations

  • Working with basic lists in Python is a great way to start introducing more advanced coding concepts.
  • It allows the developer to manipulate data and create basic structures that are essential for solving programming challenges.
  • Basic list operations in Python include performing basic arithmetic on the numbers contained within a list, accessing elements of an existing list, replacing elements of a list, rearranging elements of a list, concatenating multiple lists together, and duplicating specific entries in a list.
Python ExpressionResultsDescription
len([1, 2, 3])3Length
[1, 2, 3] + [4, 5, 6][1, 2, 3, 4, 5, 6]Concatenation
['Hi!'] * 4['Hi!', 'Hi!', 'Hi!', 'Hi!']Repetition
3 in [1, 2, 3]TrueMembership
for x in [1, 2, 3]: print x,1 2 3Iteration

List Length

  • The term "list length" in Python describes the quantity of objects (elements) that make up a list.
  • The len() function, which accepts a list as an input and returns an integer corresponding to the list's length, can be used to determine it.

Example of List Length in Python

fruits = ["apple", "banana", "cherry"]
# Finding the length of the list
length_of_fruits = len(fruits)
# Printing the length of the list
print(length_of_fruits)  # Output: 3

The len function is used in this example to find the length of the fruits list, which is the number of elements in the list. After that, the length is printed.

Output

3

The list() Constructor

  • To build a new list object in Python, use the built-in list() constructor function.
  • There are various methods to utilize it to make a list.

Example of the List() Constructor in Python

        # Using the list() constructor to create a list
numbers = list([1, 2, 3, 4, 5])
# Printing the created list
print(numbers)  # Output: [1, 2, 3, 4, 5]

The list() constructor is called in this example with an iterable (in this case, a list [1, 2, 3, 4, 5]), and it constructs a new list named numbers. The list that results is then printed.

Output

1
2
3
4
5

List Comprehension

  • Python's list comprehension feature is a clear and easy approach to building lists.
  • By applying an expression to each item in an existing iterable (such as a list, tuple, or range) and optionally filtering the elements based on a condition, it enables you to construct a new list.
  • List construction with list comprehensions is more readable and effective than using conventional for loops.

Indexing, Slicing, and Matrixes in Python

  • Indexing, slicing, and matrixes are integral parts of understanding Python.
  • The index function in Python is used to locate a certain item in a string, list, or other data type.
  • It finds the index by searching for the location of the item within its respective data set.
  • Meanwhile, the slice operator in Python is used to create subsets from larger strings and lists by indexing characters at certain locations.
  • Lastly, python matrixes are special groups of elements that use index functions to find items inside them; they are typically used for manipulating numerical data.
  • Together, understanding indexing, slicing, and matrixes in Python can help anyone more efficiently perform complex tasks such as searching for specific database items and running elaborate calculations.
Python ExpressionResultsDescription
L[2]SPAM!Offsets start at zero
L[-2]SpamNegative: count from the right
L[1:]['Spam', 'SPAM!']Slicing fetches sections

Other Best Practices With Python Lists

1. String Lists

A list in Python can store strings, just like other data types.

# String List Example
fruits = ["apple", "banana", "cherry"]
print(fruits)

Output

['apple', 'banana', 'cherry']

2. Indexing Lists

You can access individual items in a list using indexing. Python uses zero-based indexing.

# Indexing Example
fruits = ["apple", "banana", "cherry"]
print(fruits[0])  # Access the first item

Output

apple

3. Slicing Lists

You can extract a portion of a list using slicing. This allows you to create a sublist from the original list.

# Slicing Example
fruits = ["apple", "banana", "cherry", "date", "elderberry"]
print(fruits[1:4])  # Slicing from index 1 to 3 (4 is excluded)

Output

['banana', 'cherry', 'date']

4. Modifying Lists with Operators

You can modify lists using operators, like adding items using + or repeating items using *.

# Modifying List Example
fruits = ["apple", "banana"]
fruits += ["cherry", "date"]  # Adding more items to the list
print(fruits)

fruits = fruits * 2  # Repeating the list twice
print(fruits)

Output

['apple', 'banana', 'cherry', 'date']
['apple', 'banana', 'cherry', 'date', 'apple', 'banana', 'cherry', 'date']

5. Constructing a List with List Items

You can create a list by directly placing items inside square brackets [].

# Constructing List Example
fruits = ["apple", "banana", "cherry"]
print(fruits)

Output

['apple', 'banana', 'cherry']

6. Allow Duplicates in the Python List

Lists in Python allow duplicate elements.

# Duplicate Items in List Example
fruits = ["apple", "banana", "apple", "cherry"]
print(fruits)

Output

['apple', 'banana', 'apple', 'cherry']

7. List Length

You can get the length (number of items) of a list using the built-in len() function.

# List Length Example
fruits = ["apple", "banana", "cherry"]
print(len(fruits))

Output

3

8. List Items - Data Types

A Python list can store items of different data types, including numbers, strings, and even other lists.

# List with Different Data Types Example
mixed_list = [1, "apple", 3.14, True, ["a", "b", "c"]]
print(mixed_list)

Output

[1, 'apple', 3.14, True, ['a', 'b', 'c']]

9. The list() Constructor

The list() constructor can be used to create a list from an iterable (e.g., a string, tuple, or set).

# list() Constructor Example
my_string = "hello"
my_list = list(my_string)
print(my_list)

Output

['h', 'e', 'l', 'l', 'o']

10. Python Collections (Arrays)

In Python, a list is often used like an array. However, if you need more advanced array-like behavior, you can use the array module.

# Using Arrays from array Module Example
import array
arr = array.array('i', [1, 2, 3, 4])
print(arr)

Output

array('i', [1, 2, 3, 4])

11. Nested Lists and Multidimensional Lists

A list can contain other lists, creating nested or multidimensional lists.

# Nested List Example
nested_list = [["apple", "banana"], ["cherry", "date"]]
print(nested_list)

# Accessing elements in nested lists
print(nested_list[0][1])  # Accessing 'banana'

Output

[['apple', 'banana'], ['cherry', 'date']]
banana

12. Basic Example on Python List

Here's a simple example of a Python list with basic operations.

# Basic List Example
fruits = ["apple", "banana", "cherry"]

# Accessing an element
print(fruits[1])  # Outputs 'banana'

# Modifying a list
fruits.append("date")  # Adding "date" to the list
print(fruits)

# Removing an element
fruits.remove("banana")  # Removing "banana"
print(fruits)

# Iterating through the list
for fruit in fruits:
    print(fruit)

Output

banana
['apple', 'banana', 'cherry', 'date']
['apple', 'cherry', 'date']
apple
cherry
date

13. Iterating through a List

Example of Iterating through a List in Python

fruits = ["apple", "banana", "cherry"]
# Iterating through each element in the list
for fruit in fruits:
    print(fruit)

The for loop is used in this example to iterate through each fruit in the list of fruits, and print(fruit) is run for each iteration, showing each fruit on a new line.

Output

apple
banana
cherry

Python inbuilt functions

  • Python's functions can be a great tool for a variety of different tasks.
  • These native features of Python provide developers with many opportunities to create useful and efficient code.
  • From basic string manipulations to complex number crunching, python offers powerful commands at our disposal.
  • Highlighting their simplicity and brevity, python's inbuilt functions serve as succinct replacements for longer programming codes that perform the same task.
  • Whether someone is new to Python or an experienced user, Python's inbuilt functions are always worthwhile to know and utilize in that particular codebase.
Sr.No.FunctionDescription
1cmp(list1, list2)Compares elements of both lists.
2len(list)Gives the total length of the list
3max(list)Returns item from the list with a max value
4min(list)Returns item from the list with min value
5list(seq)Converts a Pythontuple into a list.

Built-in Python list methods

Sr.No.FunctionDescription
1list.append(obj)Appends object obj to list
2list.count(obj)Returns count of how many times obj occurs in a list
3list.extend(seq)Appends the contents of seq to list
4list.index(obj)Returns the lowest index in a list that obj appears
5list.insert(index, obj)Inserts object obj into a list at offset index
6list.pop(obj=list[-1])Removes and returns the last object or obj from the list
7list.remove(obj)Removes object obj from the list
8list.reverse()Reverses objects of the list in place
9list.sort([func])Sorts objects of the list, use compare func if given
Summary

Python lists offer tremendous flexibility and make organizing data a breeze. Now that we have gone through the basics of Python Lists, it should be much easier to build applications or APIs that are powered by lists. If you want to become a master in Python and learn every concept from scratch just go with our Data Science with Python Training Course.

FAQs

Python tuples are immutable, whereas lists are mutable.

In Python, a list of list elements is a nested list where each element is a list in and of itself.

The Python syntax for constructing a list is "my_list = [1, 2, 3]".

Order preservation, mutability, and support for various data types are all characteristics of lists in Python.
Share Article
About Author
Sakshi Dhameja (Author and Mentor)

She is passionate about different technologies like JavaScript, React, HTML, CSS, Node.js etc. and likes to share knowledge with the developer community. She holds strong learning skills in keeping herself updated with the changing technologies in her area as well as other technologies like Core Java, Python and Cloud.

Accept cookies & close this