web-dev-qa-db-fra.com

Quelle est la méthode recommandée pour rompre la déclaration if? (Saut de ligne W504 après opérateur binaire)

Quelle est actuellement la méthode recommandée pour rompre la longue ligne de l'instruction if avec les opérateurs "et" et "ou"?

1ère option

Avec le style ci-dessous (qui vient de PEP8) avec flake8, je reçois des avertissements: W504 saut de ligne après l'opérateur binaire:

if (this_is_one_thing and
    that_is_another_thing):
    do_something()

2ème option

if (this_is_one_thing
    and that_is_another_thing):
    do_something()

Maintenant, je reçois l'avertissement de coupure de ligne W503 avant l'opérateur binaire. La seconde semble être en accord avec cette recommandation du PEP8

J'ai essayé de trouver une réponse mais je ne suis toujours pas sûr. Je pense que peut-être utiliser la 2e option et désactiver l'avertissement W503 sera un moyen de résoudre ce problème?

7
ann.piv

En cas de doute, demandez Noir :

if (                                                           
    this_is_one_thing
    and that_is_another_thing
):                                                             
    do_something()                                             

Pendant longtemps, PEP-8 a recommandé de casser après un opérateur binaire, mais ils sont "récemment" passés à Donald-Knuth- approuvé break-before-binary-operator style.

0
L3viathan