Les nouvelles fonctionnalités de Python 3 disent:
nous réparons principalement des désagréments et des verrues bien connus, et nous supprimons beaucoup d'anciennes cruches
Il mentionne ce qui est différent (la solution) mais pas pourquoi (les problèmes). Je n'ai pas trouvé quels étaient les problèmes. Quels étaient les problèmes résolus par les correctifs?
python
standards
python-3.x
user712092
la source
la source
Réponses:
Je vais juste nommer ceux qui me viennent immédiatement à l'esprit.
nonlocal
: Sans cela, les fermetures ne peuvent pas écraser les variables fermées. Ce besoin se pose de temps en temps avec les décorateurs et d'autres fonctions d'ordre supérieur. La seule solution de contournement raisonnable (sans changer l'API externe), stockant tout état mutable que vous souhaitez dans un objet mutable, est excessivement laide.in
tests (à partir de Python 3.2, ceux-ci sont également optimisés par l'optimiseur de judas).0777
notation est un piège pour ceux qui n'y sont pas habitués (dans d'autres contextes, l'ajout d'un zéro à gauche ne change ni la valeur ni la base).except ex, var
->except ex as var
corrige l'erreur communeexcept ValueError, IndexError
(devrait intercepter les deux, mais n'attrape que le premier et écrase le nomIndexError
avec l'exception interceptée).la source