20
DecWhat is List In Python: Learn List in Python (With Example)
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.
- A list can be reversed by using the reverse() method in Python.
- 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 Expression | Results | Description |
len([1, 2, 3]) | 3 | Length |
[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] | True | Membership |
for x in [1, 2, 3]: print x, | 1 2 3 | Iteration |
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 Expression | Results | Description |
L[2] | SPAM! | Offsets start at zero |
L[-2] | Spam | Negative: 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
- A Python's for loop can be used to traverse through a list's components repeatedly.
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. | Function | Description |
1 | cmp(list1, list2) | Compares elements of both lists. |
2 | len(list) | Gives the total length of the list |
3 | max(list) | Returns item from the list with a max value |
4 | min(list) | Returns item from the list with min value |
5 | list(seq) | Converts a Pythontuple into a list. |
Built-in Python list methods
Sr.No. | Function | Description |
1 | list.append(obj) | Appends object obj to list |
2 | list.count(obj) | Returns count of how many times obj occurs in a list |
3 | list.extend(seq) | Appends the contents of seq to list |
4 | list.index(obj) | Returns the lowest index in a list that obj appears |
5 | list.insert(index, obj) | Inserts object obj into a list at offset index |
6 | list.pop(obj=list[-1]) | Removes and returns the last object or obj from the list |
7 | list.remove(obj) | Removes object obj from the list |
8 | list.reverse() | Reverses objects of the list in place |
9 | list.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.