Comment utiliser None, le null version Python ?

Qu'est-ce que None en Python ? Pourquoi null n'existe pas en Python ? Découvrez pourquoi None existe en Python, quand et pourquoi l'utiliser !

Article publié le et mis à jour le .
Comment utiliser None, le null version Python ?
🐍 Apprenez à maîtriser Python avec 200+ exercices !

Rejoignez mon cours sur Udemy, pour apprendre Python par la pratique avec plus de 200 exercises pour les débutants.

83 places sur 100 déjà parties

🚀 Le prix augmente tous les 100 membres !

Rejoignez le cours maintenant

Qu’est-ce que None en Python ? Pourquoi null n’existe pas en Python ? Découvrez pourquoi None existe en Python, quand et pourquoi l’utiliser !

En Python, null n’existe pas. On utilise son équivalent, None.

None indique l’absence de valeur, c’est l’équivalent de null qui existe dans d’autres langages de programmation.

Qu’est-ce que None en Python

None est une constante native, c’est le seul objet Python de type NoneType, comparer None avec un autre type retournera donc systématiquemnt False.

None n’est pas égale à False, 0, "", [], {} ou encore (). Ces valeurs qu’on appelle falsy ne sont donc pas égales à None.

Toute comparaison avec None retournera False, sauf la comparaison avec None lui même ou une variable ayant comme valeur None.

Par exemple :

  • None is False renvoie False
  • None == False renvoie False
  • None n’est pas falsy
  • C’est pareil pour toutes les comparaisons avec 0, "", [], {} ou encore ()
  • Seuls None is None et None == None renvoient True

Mettons ça en pratique :

>>> None is False
False
>>> None == False
False
>>> None == 0
False
>>> None == ''
False
>>> None == []
False
>>> None == {}
False
>>> None == ()
False
>>> None == None
True
>>> None is None
True
>>> n = None
>>> None is n
True
>>> n == None
True

Quand et comment utilise-t’on None ?

En Python, on utilise None dans les comparaisons pour voir si la valeur d’une variable est vide ou bien pour initialiser une variable à une valeur vide avec l’intention qu’elle soit remplie après.

Par exemple on peut avoir une variable avec une valeur nulle qu’on espère changer si une condition est remplie :

gagnant = None

prenom = input('Qui a gagné ?')

## On vérifie que le prénom est bien composé de lettres
if prenom.isalpha():
  gagnant = prenom

## Si on a un gagnant (et donc qu'il n'est pas null)
if gagnant is not None:
  print(gagnant, 'a gagné')

Comment retourner None en Python ?

Pour retourner la valeur None en Python, on peut soit explicitement retourner None avec l’expression return None, soit ne rien retourner comme Python retourne None implicitement quand aucune valeur n’est retournée.

En effet, une fonction retourne systèmatiquement la valeur None si aucune autre valeur n’est retournée explicitement.

Par exemple une simple fonction qui ne fait rien avec l’expression pass :

def test():
  pass

print(test())

Retourne sur la sortie standard :

None

None est null !

Et voilà, vous savez maintenant ce qu’est None en Python !

Pour rappel :

  • L’équivalent de null en Python est None.
  • None est un objet de type NoneType qui représente l’absence d’une valeur.
  • Quand une fonction ne renvoie pas de valeur, elle renvoie implicitement None.
  • Toute comparaison avec None retournera False sauf quand il est comparé avec lui-même None == None.

Top 10 des meilleurs livres pour apprendre Python en 2024

12 des meilleurs cours Python en Français

La fonction range en Python

Les exposants en Python

Les Boucles For en Python

9 idées de projets en Python pour débutants

Python vs Java : Quel est le meilleur langage en 2024 ?

🐍 Apprenez à maîtriser Python avec 200+ exercices !

Rejoignez mon cours sur Udemy, pour apprendre Python par la pratique avec plus de 200 exercises pour les débutants.

83 places sur 100 déjà parties

🚀 Le prix augmente tous les 100 membres !

Rejoignez le cours maintenant