215 votes

Syntaxe "If not" de Python

Je suis un peu confus quant à la raison pour laquelle tant de développeurs python utilisent if not dans leurs déclarations conditionnelles.

Par exemple, disons que nous avons une fonction,

def foo(bar = None):
    if not bar:
        bar = 2

Mais pourquoi procéder de cette façon ? Je veux dire, est-ce que faire if bar != None o if bar is not None être plus explicite ? Que fait if not essayer de dire ?

273voto

Oui, if bar is not None est plus explicite, et donc meilleure, en supposant que c'est bien ce que vous voulez. Ce n'est pas toujours le cas, il y a des différences subtiles : if not bar: s'exécutera si bar est tout type de conteneur nul ou vide, ou False . De nombreuses personnes utilisent not bar où ils vraiment moyenne bar is not None .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X