Skip to Content

Python for Fintech Professionals: Lists

Lists in Python are ordered collections that can hold items of different types.
This is the twelveth blog on Python for fintch professionals.

Python lists are an essential data structure that allows you to store multiple items in a single variable. In this blog post, we will delve into the various aspects of lists, from their creation to operations like sorting and searching.

What is a List?

A list in Python is defined by values enclosed in square brackets and separated by commas. For example:

my_list = [1, 2, 3]

Characteristics of Lists


Heterogeneous Data Types

Lists can hold items of different data types. You can mix integers, strings, floats, and even Boolean values in a single list:

mixed_list = [1, "hello", 3.14, True]

Indexing

Lists are zero-indexed, meaning the first element is at index 0. You can access elements using their index:

my_list = [1, 2, 3]
last_element = my_list[0]
print(last_element)# Outputs: 1

Negative indexing is also supported. For instance, -1 refers to the last element of the list:

my_list = [1, 2, 3]
last_element = my_list[-1]
print(last_element)# Outputs: 3

Length of a List

You can determine the number of elements in a list using the len() function:

my_list = [1, 2, 3]
print(len(my_list))  # Outputs: 3

Empty Lists

You can create an empty list, which can be populated later:

empty_list = []

Nested Lists

Lists can contain other lists, allowing for multi-dimensional structures:

nested_list = [[1, 2, 3], [4, 5, 6]]

Variable Assignment

If you assign one list to another variable, they both point to the same memory location. Modifying one will affect the other:

list_a = ['a', 'b', 'c']
list_b = list_a
list_a[0] = 'd'
print(list_b)  # Outputs: ['d', 'b', 'c']

Accessing and Modifying List Elements

Accessing Elements

To access an element in a list, use the list name followed by the index in square brackets:

element = my_list[1]  # Outputs: 2

Changing Elements

You can update an element by assigning a new value to its index:

my_list[0] = 100

Deleting Elements

You can remove an element from a list using the del statement:

del my_list[1]  # Removes the element at index 1

Adding Elements

You can add elements to a list using the .append() method, which adds to the end of the list:

my_list.append(4)  # Now my_list is [1, 100, 4]

To insert an element at a specific position, use the `.insert()` method:

my_list.insert(0, 0)  # Inserts 0 at the beginning

Iterating Over Lists

You can iterate through a list using a for loop. Python handles the indexing automatically:

for item in my_list:
print(item)

Alternatively, if you need the index, you can use range() in combination with len():

for i in range(len(my_list)):
print(my_list[i])

Sorting Lists

You can sort lists in ascending order using the .sort() method:

my_list = [8, 10, 6, 2, 4]
my_list.sort()  # Now sorted

To sort in descending order, use the reverse argument:

my_list.sort(reverse=True)

Reversing a List

To reverse a list in place, use the .reverse() method:

my_list.reverse()

Copying Lists

You can create a shallow copy of a list using slicing:

list_a = [1, 2, 3, 4, 5]
list_b = list_a[:]  # Copies the entire list

Searching in Lists

Python provides the "in" and "not in" operators for searching:

my_list = [1, 2, 3, 4, 5]
print(5 in my_list)  # Outputs: True
print(6 not in my_list)  # Outputs: True

Conclusion

Lists are a versatile and powerful feature in Python, allowing for the storage and manipulation of collections of items. By understanding how to create, modify, and interact with lists, you can handle complex data structures effectively.


Share this post
Sign in to leave a comment
Python for Fintech Professionals: Loops
Loops in Python, such as "for" and "while", enable code execution repeatedly based on a condition or a sequence.