Correct façon de définir le code source Python encodage

PEP 263 définit comment déclarer code source Python encodage.

Normalement, les 2 premières lignes d'un fichier Python devrait commencer par:

#!/usr/bin/python
# -*- coding: <encoding name> -*-

Mais j'ai vu beaucoup de fichiers à partir de:

#!/usr/bin/python
# -*- encoding: <encoding name> -*-

=> encodage au lieu de codage.

Alors, quelle est la bonne façon de déclarer l'encodage du fichier?

Est encodage permis en raison de l'expression régulière utilisée est paresseux? Ou est-ce juste une autre forme de déclarer l'encodage du fichier?

Je vous pose cette question parce que le PEP ne pas en parler encodage, c'est juste parle codage.

  • Par ailleurs, pour plus de flexibilité et de portabilité, il est recommandé d'utiliser #!/usr/bin/env python au lieu de #!/usr/bin/python
  • J'aime la façon dont aucune des réponses sur cette page ont un simple exemple pour dire UTF8. StackOverly à son meilleur.
  • Je voulais juste ajouter que Python 3 a changé l'encodage par défaut de ascii à UTF-8. Comparer: python 2.7 docs python 3.7 docs. Cela signifie que vous pouvez omettre cet encodage si vous voulais préciser UTF-8.
InformationsquelleAutor Oli | 2009-04-08