Recherche…


Initialisations de clé de dictionnaire

Préférez la méthode dict.get si vous n'êtes pas sûr si la clé est présente. Il vous permet de retourner une valeur par défaut si la clé est introuvable. La méthode traditionnelle dict[key] KeyError une exception KeyError .

Plutôt que de faire

def add_student():
    try:
        students['count'] += 1
    except KeyError:
        students['count'] = 1

Faire

def add_student():
        students['count'] = students.get('count', 0) + 1

Changement de variables

Pour changer la valeur de deux variables, vous pouvez utiliser la décompression de tuple.

x = True 
y = False 
x, y = y, x 
x
# False 
y
# True

Utilisez des tests de valeur de vérité

Python convertira implicitement n'importe quel objet en valeur booléenne pour le tester, donc utilisez-le autant que possible.

# Good examples, using implicit truth testing
if attr:
    # do something

if not attr:
    # do something

# Bad examples, using specific types
if attr == 1:
    # do something

if attr == True:
    # do something

if attr != '':
    # do something

# If you are looking to specifically check for None, use 'is' or 'is not'
if attr is None:
    # do something

Cela produit généralement un code plus lisible et est généralement beaucoup plus sûr lorsqu'il s'agit de types inattendus.

Cliquez ici pour une liste de ce qui sera évalué à False .

Test de "__main__" pour éviter l'exécution de code inattendue

Il est __name__ de __name__ variable __name__ du programme appelant avant d'exécuter votre code.

import sys

def main():
    # Your code starts here

    # Don't forget to provide a return code
    return 0

if __name__ == "__main__":
    sys.exit(main())

L'utilisation de ce modèle garantit que votre code n'est exécuté que lorsque vous vous attendez à ce qu'il soit; Par exemple, lorsque vous exécutez explicitement votre fichier:

python my_program.py

L'avantage, cependant, vient si vous décidez d' import votre fichier dans un autre programme (par exemple, si vous l'écrivez dans le cadre d'une bibliothèque). Vous pouvez ensuite import votre fichier et le piège __main__ garantira qu'aucun code n'est exécuté de manière inattendue:

# A new program file
import my_program        # main() is not run

# But you can run main() explicitly if you really want it to run:
my_program.main()


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow