Day 5: Python Lists Demystified: Tips, Tricks, and Best Practices

A list is a built-in data structure that represents an ordered, mutable and indexable collection of items. It is similar to the arrays in c. but in the case of lists, they can be dynamically allocated. In python, the list is represented with with values separated by ",". x = [1, 2, 3, 4, 5, 6] Dynamically Allocated: a data structure can grow (or shrink) in memory as needed. Mutable: An object can be modified after it has been created. Indexability: the ability of a data structure to allow access to its elements using an index. List Assignment: There are two main scenarios to consider: direct assignment and copying. 1. Direct Assignment When you directly assign one list to another variable, both variables point to the same list object in memory. Changes made via one variable will affect the other. a = [1 , 2 , 3 , 4] b = a b[3] = 10 print(b) #[1,2,3,10] print(a) #[1,2,3,10] 2.Copying a List To create an independent copy of a list, you need to explicitly copy it using methods like: 1. Using List(): list2 = list(list1) 2. Using copy(): List2 = List1.copy() List Slicing: List slicing is a technique used to extract a subset of elements from a list. It allows you to create a new list that includes a specific range of elements from an existing list. syntax List2 = List1[start : stop : step] Example: c = [10, 2, 3, 4] d = c[0 : 3 : 1] print(d) ##[10, 2, 3] Nested Lists: In python, a List can consist of another lists as elements list1 = [[1,2,3,4],[5,6,7,8]] Built-In Functions: 1. append() Adds an element to the end of the list. List1 = [1, 2, 3] List1.append(4) print(List1) #[1, 2, 3, 4] 2. pop() Removes and returns an element at a specific index (defaults to the last element). my_list = [1, 2, 3] removed_element = my_list.pop() print(removed_element) # 3 print(my_list) #[1, 2] 3. remove() Removes the first occurrence of a specific element. my_list = [1, 2, 3, 2] my_list.remove(2) print(my_list) # [1, 3, 2] 4. clear() Removes all elements from the list, making it empty. my_list = [1, 2, 3] my_list.clear() print(my_list) # Output: [] 5. index() Returns the index of the first occurrence of a specified element. my_list = [1, 2, 3] print(my_list.index(2)) # Output: 1 6. count() Returns the number of occurrences of a specified element in the list. my_list = [1, 2, 2, 3, 2] print(my_list.count(2)) # Output: 3 7. sort() Sorts the elements of the list in ascending order (modifies the list in place). my_list = [3, 1, 2] my_list.sort() print(my_list) # Output: [1, 2, 3] 8. reverse() Reverses the order of the elements in the list (modifies the list in place). my_list = [1, 2, 3] my_list.reverse() print(my_list) # Output: [3, 2, 1] 9. min() and max() min() returns the smallest element in the list. max() returns the largest element in the list. my_list = [1, 2, 3, 4] print(min(my_list)) # Output: 1 print(max(my_list)) # Output: 4 10. sum() Returns the sum of all elements in the list (useful for lists of numbers). my_list = [1, 2, 3, 4] print(sum(my_list)) # Output: 10

Jan 21, 2025 - 08:17
 0
Day 5: Python Lists Demystified: Tips, Tricks, and Best Practices

A list is a built-in data structure that represents an ordered, mutable and indexable collection of items. It is similar to the arrays in c. but in the case of lists, they can be dynamically allocated.
In python, the list is represented with with values separated by ",".

x = [1, 2, 3, 4, 5, 6]
  • Dynamically Allocated: a data structure can grow (or shrink) in memory as needed.
  • Mutable: An object can be modified after it has been created.
  • Indexability: the ability of a data structure to allow access to its elements using an index.

Image description

List Assignment:

There are two main scenarios to consider: direct assignment and copying.

1. Direct Assignment

When you directly assign one list to another variable, both variables point to the same list object in memory. Changes made via one variable will affect the other.

a = [1 , 2 , 3 , 4]
b = a
b[3] = 10
print(b) #[1,2,3,10]
print(a) #[1,2,3,10]

2.Copying a List

To create an independent copy of a list, you need to explicitly copy it using methods like:

1. Using List():

list2 = list(list1)

2. Using copy():

List2 = List1.copy()

List Slicing:

List slicing is a technique used to extract a subset of elements from a list. It allows you to create a new list that includes a specific range of elements from an existing list.

syntax

List2 = List1[start : stop : step] 

Example:

c = [10, 2, 3, 4]
d = c[0 : 3 : 1]
print(d) ##[10, 2, 3]

Nested Lists:

In python, a List can consist of another lists as elements

list1 = [[1,2,3,4],[5,6,7,8]]

Built-In Functions:

1. append()

Adds an element to the end of the list.

List1 = [1, 2, 3]
List1.append(4)
print(List1)  #[1, 2, 3, 4]

2. pop()

Removes and returns an element at a specific index (defaults to the last element).

my_list = [1, 2, 3]
removed_element = my_list.pop()
print(removed_element)  # 3
print(my_list)  #[1, 2]

3. remove()

Removes the first occurrence of a specific element.

my_list = [1, 2, 3, 2]
my_list.remove(2)
print(my_list)  # [1, 3, 2]

4. clear()

Removes all elements from the list, making it empty.

my_list = [1, 2, 3]
my_list.clear()
print(my_list)  # Output: []

5. index()

Returns the index of the first occurrence of a specified element.

my_list = [1, 2, 3]
print(my_list.index(2))  # Output: 1

6. count()

Returns the number of occurrences of a specified element in the list.

my_list = [1, 2, 2, 3, 2]
print(my_list.count(2))  # Output: 3

7. sort()

Sorts the elements of the list in ascending order (modifies the list in place).

my_list = [3, 1, 2]
my_list.sort()
print(my_list)  # Output: [1, 2, 3]

8. reverse()

Reverses the order of the elements in the list (modifies the list in place).

my_list = [1, 2, 3]
my_list.reverse()
print(my_list)  # Output: [3, 2, 1]

9. min() and max()

min() returns the smallest element in the list.
max() returns the largest element in the list.

my_list = [1, 2, 3, 4]
print(min(my_list))  # Output: 1
print(max(my_list))  # Output: 4

10. sum()

Returns the sum of all elements in the list (useful for lists of numbers).

my_list = [1, 2, 3, 4]
print(sum(my_list))  # Output: 10

What's Your Reaction?

like

dislike

love

funny

angry

sad

wow