Python : Vérifier si une liste est vide ou non – ( Mise à jour 2020 )

Dans cet article, nous allons aborder différentes façons de vérifier si une liste est vide ou non. Nous verrons également comment vérifier si une liste de listes est vide ou non en utilisant la boucle for, la compréhension de liste et la fonction all().
Table des matières

  • Vérifier si une liste est vide en utilisant l’opérateur ‘not’ en python
  • Vérifier si une liste est vide en utilisant la fonction len()
  • Python : Vérifier si une liste est vide en comparant avec une liste vide
  • Vérifier si une liste est vide en utilisant __len__()
  • Vérifier si une liste est vide en utilisant numpy
  • Vérifier si une liste de listes est vide
    • Vérifier si une liste de listes est vide en utilisant for loop
    • Vérifier si une liste de listes est vide en utilisant List comprehension

Vérifier si une liste est vide en utilisant l’opérateur ‘not’ en python

En python, un objet séquence peut être implicitement convertible en bool. Si la séquence est vide, alors elle s’évalue à False sinon elle s’évalue à True. Ainsi, nous pouvons appliquer une instruction if à un objet séquence pour vérifier si elle est vide ou non.

En appliquant une instruction if à l’objet liste, nous pouvons vérifier si elle est vide pr non. Par exemple,

# Create an empty listlist_of_num = # Empty list object will evaluate to Falseif not list_of_num: print('List is empty')else: print('List is not empty')

Output:

List is empty

Comment cela a-t-il fonctionné ?

Lorsque l’instruction ‘if’ est appliquée à une liste, elle évalue à False si la liste est vide, sinon elle évalue à True. Si nous appliquons l’opérateur ‘not’ avec l’instruction ‘if’ à l’objet liste, il évalue à True si la liste est vide sinon il renvoie False.

Vérifier si la liste est vide en utilisant la fonction len()

Python fournit une fonction intégrée len(),

len(sequence)

Elle accepte une séquence comme une liste, un tuple ou un ensemble, etc, et renvoie le nombre d’éléments dans cette séquence c’est-à-dire, taille de la séquence.
Nous pouvons vérifier la taille de la liste en passant l’objet liste à la fonction len(). Une fois que nous avons la taille de la liste, nous pouvons confirmer si une liste est vide en vérifiant si sa taille est 0. Par exemple,

# Create an empty listlist_of_num = # Check if list's size is 0if len(list_of_num) == 0: print('List is empty')else: print('List is not empty')

Sortie:

List is empty

Python : Vérifier si la liste est vide en comparant avec la liste vide

En python, les crochets vides pointent vers la liste vide. Ainsi, nous pouvons vérifier si notre objet liste est vide ou non en le comparant simplement avec i.e.

# Create an empty listlist_of_num = # Check if list object points to literal if list_of_num == : print('List is empty')else: print('List is not empty')

Output:

List is empty

Ce n’est pas l’approche la plus rapide, car il faudra d’abord créer un objet liste vide et ensuite effectuer la comparaison.

Vérifier si la liste est vide en utilisant __len__()

La classe liste possède une méthode spéciale surchargée,

list.__len__()

Elle renvoie le nombre d’éléments dans la liste. Nous pouvons vérifier la taille d’une liste en appelant la fonction __len__() sur l’objet liste. Une fois que nous avons la taille de la liste, nous pouvons confirmer si une liste est vide en vérifiant si sa taille est 0. Par exemple,

# Create an empty listlist_of_num = # Check if list's size is 0if list_of_num.__len__() == 0: print('List is empty')else: print('List is not empty')

Sortie :

List is empty

Vérifier si une liste est vide en utilisant numpy

Convertir une liste Python en un tableau numpy, puis vérifier la taille du tableau numpy en utilisant l’attribut size. Si la taille du tableau numpy est zéo alors cela signifie que la liste est vide. Par exemple,

import numpy as np# Create an empty listlist_of_num = arr = np.array(list_of_num)if arr.size == 0: print('List is empty')else: print('List is not empty')

Sortie :

List is empty

Vérifier si une liste de listes est vide

Il peut y avoir des scénarios où nous avons une liste de listes, et nous voulons savoir si toutes les sous-listes sont vides. Il existe différentes façons de le faire. Discutons-les une par une.

Vérifier si une liste de listes est vide en utilisant la boucle for

Nous avons créé une fonction qui accepte une liste de listes et vérifie si toutes les sous-listes de la liste donnée sont vides ou non. Utilisons cette fonction pour vérifier si toutes les listes d’une liste sont vides ou non.

def check_if_empty(list_of_lists): for elem in list_of_lists: if elem: return False return True# List of listlist_of_lists = , , , ]if check_if_empty(list_of_lists): print('List of Lists is empty')else: print('List of Lists is not empty')

Sortie :

List of Lists is empty

Cette fonction check_if_empty() accepte une liste de listes, puis itère sur toutes les sous-listes de la liste principale en utilisant la boucle for, et pour chaque sous-list, elle vérifie si elle est vide ou non en utilisant ‘la condition if’ & ‘l’opérateur not’. Si l’une des sous-listes est non vide, elle renvoie False, tandis que si toutes les sous-listes sont vides, elle renvoie True.

Vérifier si une liste de listes est vide en utilisant la compréhension de liste

À la différence de la solution précédente, nous allons ici vérifier si toutes les sous-listes d’une liste donnée sont vides ou non en un seul like en utilisant la compréhension de liste et la fonction all().

def check_if_empty_2(list_of_lists): return all()# List of listlist_of_lists = , , , ]if check_if_empty_2(list_of_lists): print('List of Lists is empty')else: print('List of Lists is not empty')

Sortie:

List of Lists is empty

La compréhension de liste a renvoyé une liste de bools, où chaque entrée de cette liste de bools représente la sous-liste de la liste principale. Si une sous-liste était vide, alors l’entrée correspondante dans cette liste de bools sera True sinon False.
Puis nous avons passé cette liste de bools à la fonction all() pour vérifier si tous les éléments de cette liste de bools sont True ou non. Si tous les éléments de la liste bool sont True, alors cela signifie que toutes les sous-listes de la liste principale sont vides.

Résumé

Nous avons discuté des différentes façons de vérifier si une liste est vide ou non. Puis nous avons également examiné les techniques pour vérifier si une liste contient toutes les listes vides ou non.

.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *