Estou escrevendo algum código python e estou recebendo a mensagem de erro como no título, ao pesquisar isso tem a ver com o conjunto de caracteres.
Aqui está a linha que causa o erro
hc = HealthCheck("instance_health", interval=15, target808="HTTP:8080/index.html")
Não consigo descobrir qual caractere não está no conjunto ANSI ASCII? Além disso, a pesquisa "\ xe2" não fornece mais informações sobre qual caractere aparece. Qual personagem dessa linha está causando o problema?
Também vi algumas correções para esse problema, mas não sei qual usar. Alguém poderia esclarecer qual é o problema (python não interpreta unicode, a menos que seja solicitado a fazê-lo?), E como eu o esclareceria corretamente?
EDIT: Aqui estão todas as linhas próximas a que erros
def createLoadBalancer():
conn = ELBConnection(creds.awsAccessKey, creds.awsSecretKey)
hc = HealthCheck("instance_health", interval=15, target808="HTTP:8080/index.html")
lb = conn.create_load_balancer('my_lb', ['us-east-1a', 'us-east-1b'],[(80, 8080, 'http'), (443, 8443, 'tcp')])
lb.configure_health_check(hc)
return lb
–
-\xe2\x80\x93
)Respostas:
Você tem um byte perdido flutuando. Você pode encontrá-lo executando
onde você deve substituir
"x.py"
pelo nome do seu programa. Você verá o número da linha e a (s) linha (s) ofensiva (s). Por exemplo, depois de inserir esse byte arbitrariamente, obtive:fonte
O'Donnell
Se você está apenas tentando usar caracteres UTF-8 ou não se importa se eles estão no seu código, adicione esta linha ao topo do seu
.py
arquivofonte
Ou você pode simplesmente usar:
na parte superior do arquivo .py
fonte
\ xe2 é o caractere '-', aparece em algumas cópias e colas e usa um 'igual' de aparência diferente - que causa erros de codificação. Substitua o '-' (da pasta copiar) pelo '-' correto (do botão do teclado).
fonte
Altere a codificação de caracteres do arquivo,
coloque a linha abaixo no topo do seu código sempre
fonte
Eu tive o mesmo erro ao copiar e colar um comentário da Web
Para mim, era uma citação simples (') na palavra
Eu apenas apaguei e digitei novamente.
fonte
Adicionar a linha # coding = utf-8 na primeira linha do seu arquivo .py corrigirá o problema.
Por favor, leia mais sobre o problema e sua correção no link abaixo, neste artigo, o problema e sua solução são bem descritos: https://www.python.org/dev/peps/pep-0263/
fonte
Eu recebi esse erro para caracteres nos meus comentários (de copiar / colar conteúdo da Web no meu editor para anotações).
Para resolver no Text Wrangler:
fonte
Baseado em PEP 0263 - Definindo codificações de código-fonte Python
fonte
Eu tive o mesmo problema e acabei de adicioná-lo ao topo do meu arquivo (no Python 3 eu não tive o problema, mas o faço no Python 2
fonte
Após cerca de meia hora de análise do estouro da pilha, ocorreu-me que, se o uso de uma única citação "'" em um comentário, ocorrerá o erro:
Depois de analisar o rastreio, consegui localizar a citação única usada no meu comentário.
fonte
Se isso ajuda alguém, para mim isso aconteceu porque eu estava tentando executar uma implementação do Django no python 3.4 com o meu comando python 2.7
fonte
Eu tive esse problema exato executando o código .py simples abaixo:
O código do DSM acima forneceu o seguinte:
1 'imprimir \ xe2 \ x80 \ x98versão é \ xe2 \ x80 \ x99, sys.version'
Portanto, a questão era que meu editor de texto usava SMART QUOTES, como John Y sugeriu. Depois de alterar as configurações do editor de texto e reabrir / salvar o arquivo, ele funciona perfeitamente.
fonte
Estou tentando analisar esse apóstrofo estranho do Windows e depois de tentar várias coisas aqui é o trecho de código que funciona.
fonte
Eu tive o mesmo problema, mas foi porque copiei e colei a string como ela é. Mais tarde, quando eu digitei manualmente a string, pois o erro desapareceu.
Eu tive o erro devido ao
-
sinal. Quando o substituí pela entrada manual de um-
erro foi resolvido.Sequência copiada
10 + 3 * 5/(16 − 4)
String digitada manualmente
10 + 3 * 5/(16 - 4)
você pode ver claramente que há um pouco de diferença entre os dois hífens .
Eu acho que é por causa da formatação diferente usada por diferentes sistemas operacionais ou talvez apenas software diferente.
fonte
Para mim, o problema causou devido a "'" esse símbolo entre aspas. Como eu havia copiado o código de um arquivo pdf, ele causou esse erro. Acabei de substituir "'" por este "'".
fonte
Se você deseja identificar qual caractere causou isso, atribua a variável problemática a uma string e imprima-a no console do iPython.
No meu caso
fonte
para mim, o problema foi causado ao digitar meu código no Mac Notes e copiá-lo do Mac Notes e colá-lo na minha sessão do vim para criar meu arquivo. Isso fez minhas aspas simples serem do tipo curvo. para corrigi-lo, abri meu arquivo no vim e substitui todas as minhas aspas simples curvas pelo tipo reto, apenas removendo e redigitando o mesmo caractere. Foi o Mac Notes que fez o mesmo toque de tecla produzir a aspas simples curvas.
fonte
Não consegui encontrar o problema por muito tempo, mas depois percebi que havia copiado uma linha "UTC-12: 00" da Web e o hífen / traço estava causando o problema. Acabei de escrever este "-" novamente e o problema foi resolvido.
Portanto, às vezes as linhas coladas da cópia também apresentam erros. Nesses casos, basta reescrever o código colado da cópia e ele funciona. Ao reescrever, parece que nada foi alterado, mas o erro desapareceu.
fonte
Quando tenho um problema semelhante ao ler arquivos de texto, uso ...
fonte