Python 3 usa codificação UTF-8 para arquivos de código-fonte por padrão. Ainda devo usar a declaração de codificação no início de cada arquivo de origem? Gostar# -*- coding: utf-8 -*-
Python 3 usa codificação UTF-8 para arquivos de código-fonte por padrão. Ainda devo usar a declaração de codificação no início de cada arquivo de origem? Gostar# -*- coding: utf-8 -*-
Respostas:
Como o padrão é UTF-8, você só precisa usar essa declaração quando se desviar do padrão ou se depender de outras ferramentas (como seu IDE ou editor de texto) para fazer uso dessas informações.
Em outras palavras, no que diz respeito ao Python , somente quando você deseja usar uma codificação diferente, é necessário usar essa declaração.
Outras ferramentas, como o seu editor, podem suportar sintaxe semelhante, e é por isso que a especificação PEP 263 permite uma flexibilidade considerável na sintaxe (deve ser um comentário, o texto coding
deve estar lá, seguido por um caractere :
ou =
e um espaço em branco opcional, seguido por um codec reconhecido).
Observe que isso se aplica apenas à forma como o Python lê o código-fonte . Não se aplica à execução desse código, portanto, não à maneira como imprimir, abrir arquivos ou qualquer outra operação de E / S é convertida entre bytes e Unicode. Para mais detalhes sobre Python, Unicode e codificações, eu recomendo fortemente que você leia o Python Unicode HOWTO , ou a palestra Pragmatic Unicode de Ned Batchelder.
UTF-8
, que é um padrão.Para projetos com várias codificações:
Se alguns arquivos estiverem codificados no
non-utf-8
, então mesmo para esses codificadosUTF-8
você deve adicionar a declaração de codificação também, porque a regra de ouro éExplicit is better than implicit.
configurando a codificação para um arquivo específico no pycharm
# vim: set fileencoding=<encoding name> :
# -*- coding: utf-8 -*-
ainda pode ser útil para alguns editores para mudar para o esperado codificação ao editar o arquivo de origem.