DEV Community

Cover image for This Is Your Complete Guide To All Python List Methods
Aya Bouchiha
Aya Bouchiha

Posted on

This Is Your Complete Guide To All Python List Methods

Hi, I'm Aya Bouchiha, today, I'm going to talk about the list of built-in objects.

Definition of a List

A list is a mutable, iterable, ordered collection of values. It is used to store different and multiple values in one variable.

Creating a list

new_list = ['hi', 1, False, {"name":"Aya"}, [10, 20], None]

print(new_list) # ['hi', 1, False, {"name":"Aya"}, [10, 20], None]
print(type(new_list)) # <class 'list'>
print(len(new_list)) # 6
Enter fullscreen mode Exit fullscreen mode

All list methods

append()

append(value): this list method lets you insert an element at the end of the list.

my_list = [10, 20, 30]

my_list.append(40)

print(my_list.append(50)) # None

print(my_list) # [10, 20, 30, 40, 50]

my_list.append() # error
Enter fullscreen mode Exit fullscreen mode

insert()

insert(index, value): used to add a new element at a given index

admins = ['Aya Bouchiha', 'John Doe']

admins.insert(0, 'Simon Bihao') 
print(admins)  # ['Simon Bihao', 'Aya Bouchiha', 'John Doe']

admins.insert(2, 'Salma Nouhary')
print(admins) # ['Simon Bihao', 'Aya Bouchiha', 'Salma Nouhary', 'John Doe']
Enter fullscreen mode Exit fullscreen mode

pop()

pop(index = -1): delete the elements that exist in the given index, by default the index is the -1 which is the index of the last element. In addition, it returns the deleted element.

admins = ['Aya Bouchiha', 'John Doe']
old_admin = admins.pop()

print(old_admin) # John Doe
print(admins) # ['Aya Bouchiha']


tasks = ['eat fruits', 'go to gym', 'drink water']
completed_task = tasks.pop(1)

print(completed_task) # go to gym
print(tasks) # ['eat fruits', 'drink water']
Enter fullscreen mode Exit fullscreen mode

remove()

remove(value): deletes the first item that matches the given value.

tasks = ['eat fruits', 'go to gym', 'drink water']
tasks.remove('eat fruits')

print(tasks.remove('drink water')) # None
print(tasks) # ['go to gym']
tasks.remove('something else') # error
Enter fullscreen mode Exit fullscreen mode

clear()

clear(): used to remove all list's items.

tasks = ['eat fruits', 'go to gym', 'drink water']

print(len(tasks)) # 3

tasks.clear()

print(tasks) # []
print(len(tasks)) # 0
Enter fullscreen mode Exit fullscreen mode

copy()

copy(): this list method is used to return a copy of the specified list.

today_tasks = ['eat fruits', 'go to gym', 'drink water']

tomorrow_tasks = today_tasks.copy()

print(tomorrow_tasks) #  ['eat fruits', 'go to gym', 'drink water']

today_tasks.clear()

print(today_tasks) # []

print(tomorrow_tasks) # ['eat fruits', 'go to gym', 'drink water']
Enter fullscreen mode Exit fullscreen mode

index()

index(value): returns the index of the first item that matched the given value.

today_tasks = ['eat fruits', 'go to gym', 'drink water']

print(today_tasks.index('eat fruits')) # 0
print(today_tasks.index('drink water')) # 2
print(today_tasks.index('buy a mouse')) # error
Enter fullscreen mode Exit fullscreen mode

count()

count(value): returns the number of repeated items that match the specified value in a list.

product_prices = [12, 227, 0, 54, 0, 20]
free_products_number = product_prices.count(0)

print(free_products_number) # 2
print(product_prices.count(224578)) # 0
Enter fullscreen mode Exit fullscreen mode

extend()

extend(iterable): helps you to insert an iterable(list, set,...) at the end of the specified list.

all_users = ['Yasm', 'Nopay', 'Houssam']
facebook_users = {'Aya', 'Simon'}
instagram_users = ('Ayman', 'Soha')

all_users.extend(facebook_users)
all_users.extend(instagram_users)

# ['Yasm', 'Nopay', 'Houssam', 'Simon', 'Aya', 'Ayman', 'Soha']
print(all_users)
Enter fullscreen mode Exit fullscreen mode

reverse()

reverse(): reverse the order of the specified list

marks = [15, 45, 51, 70]
marks.reverse()

print(marks) # [70, 51, 45, 15]
Enter fullscreen mode Exit fullscreen mode

sort()

sort(reverse = False, key(optional)): sort the list's items, if the reverse parameter was True, the items will be sorted in descending order.

the key parameter is used to specify a function that will specify the sorting criteria.

Example:1

marks = [7, 62, 71, 56, 24]
marks.sort()

print(marks) # [7, 24, 56, 62, 71]

marks.sort(reverse=True)

print(marks) # [71, 62, 56, 24, 7]

Enter fullscreen mode Exit fullscreen mode

Example:2

def get_marks(student: dict):
  return student.get('marks')

students = [
  {
    "name": "Aya Bouchiha",
    "email": "developer.aya.b@gmail.com",
    "marks": 92
  },
  {
    "name": "John Doe",
    "email": "john.doe@gmail.com",
    "marks": 95
  },
  {
    "name": "Ryan Hosm",
    "email": "ryan.hosm@gmail.com",
    "marks": 80
  }
]

students.sort(key=get_marks)

print(students)
# [{'name': 'Ryan Hosm', 'email': 'ryan.hosm@gmail.com', 'marks': 80}, {'name': 'Aya Bouchiha', 'email': 'developer.aya.b@gmail.com', 'marks': 92}, {'name': 'John Doe', 'email': 'john.doe@gmail.com', 'marks': 95}]

Enter fullscreen mode Exit fullscreen mode

Example3 (using lambda)

products = [
  {
    "name" : "laptop",
    "price": 500
  },
  {
    "name" : "phone",
    "price": 150
  },
  {
    "name" : "mouse",
    "price": 16
  },
  {
    "name": "keyboard",
    "price": 24
  }

]

products.sort(reverse=True, key=lambda product: product.get("price"))
print(products)

highest_price = products[0].get('price')
print(f'highest price is: {highest_price}')
Enter fullscreen mode Exit fullscreen mode

Output:

[{'name': 'laptop', 'price': 500}, {'name': 'phone', 'price': 150}, {'name': 'keyboard', 'price': 24}, {'name': 'mouse', 'price': 16}]
highest price is: 500
Enter fullscreen mode Exit fullscreen mode

Summary

  • append(value): inserts an element at the end of the list.

  • insert(index, value): adds a new element at a given index.

  • pop(index = -1): deletes the element that exist in the given index.

  • remove(value): deletes the first item that match the given value.

  • clear(): removes all list's items.

  • copy(): returns a copy of the specified list.

  • index(value): returns the index of the first item that matched the given value.

  • count(value): returns the number of repeated items that match the specified value in a list.

  • extend(iterable): inserts an iterable at the end of the specified list.

  • reverse(): reverses the order of the specified list.

  • sort(reverse = False, key(optional)): sorts the list's items.

References & useful Resources

Suggested posts

To Contact Me:

email:developer.aya.b@gmail.com
telegram: Aya Bouchiha

Hope you enjoyed reading this post :)

Top comments (0)