Estoy escribiendo un código de Python y recibo el mensaje de error como en el título, al buscar esto tiene que ver con el conjunto de caracteres.
Aquí está la línea que causa el error.
hc = HealthCheck("instance_health", interval=15, target808="HTTP:8080/index.html")
No puedo entender qué carácter no está en el conjunto ANSI ASCII? Además, la búsqueda "\ xe2" ya no proporciona información sobre el carácter que aparece como. ¿Qué personaje de esa línea está causando el problema?
También he visto algunas soluciones para este problema, pero no estoy seguro de cuál usar. ¿Podría alguien aclarar cuál es el problema (python no interpreta unicode a menos que se lo indiquen) y cómo lo aclararía correctamente?
EDITAR: Aquí están todas las líneas cerca de la que errores
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
)Respuestas:
Tienes un byte perdido flotando. Puedes encontrarlo ejecutando
donde debe reemplazar
"x.py"
por el nombre de su programa. Verá el número de línea y las líneas ofensivas. Por ejemplo, después de insertar ese byte arbitrariamente, obtuve:fuente
O'Donnell
Si solo está tratando de usar caracteres UTF-8 o no le importa si están en su código, agregue esta línea en la parte superior de su
.py
archivofuente
O simplemente podría usar:
en la parte superior del archivo .py
fuente
\ xe2 es el carácter '-', aparece en algunas copias y pega, usa un aspecto igual '-' diferente que causa errores de codificación. Reemplace el '-' (de copiar y pegar) con el correcto '-' (desde el botón del teclado).
fuente
Cambiar la codificación de caracteres del archivo,
poner debajo de la línea al principio de su código siempre
fuente
Tuve el mismo error al copiar y pegar un comentario de la web
Para mí fue una comilla simple (') en la palabra
Simplemente lo borré y lo volví a escribir.
fuente
Agregar # coding = línea utf-8 en la primera línea de su archivo .py solucionará el problema.
Lea más sobre el problema y su solución en el siguiente enlace, en este artículo, el problema y su solución se describen maravillosamente: https://www.python.org/dev/peps/pep-0263/
fuente
Recibí este error para los caracteres en mis comentarios (de copiar / pegar contenido de la web en mi editor para tomar notas).
Para resolver en Text Wrangler:
fuente
Basado en PEP 0263 - Definición de codificaciones de código fuente de Python
fuente
Tuve el mismo problema y acabo de agregar esto a la parte superior de mi archivo (en Python 3 no tuve el problema pero sí en Python 2
fuente
Después de aproximadamente media hora de mirar a través del desbordamiento de la pila, me di cuenta de que si el uso de una comilla simple "'" en un comentario pasaría por el error:
Después de mirar el rastreo, pude localizar la comilla simple utilizada en mi comentario.
fuente
Si ayuda a alguien, eso sucedió porque estaba tratando de ejecutar una implementación de Django en python 3.4 con mi comando python 2.7
fuente
Tuve este problema exacto al ejecutar el código .py simple a continuación:
El código de DSM anterior proporcionó lo siguiente:
1 'print \ xe2 \ x80 \ x98version es \ xe2 \ x80 \ x99, sys.version'
Entonces, el problema era que mi editor de texto usaba CITAS INTELIGENTES, como sugirió John Y Después de cambiar la configuración del editor de texto y volver a abrir / guardar el archivo, funciona bien.
fuente
Estoy tratando de analizar ese extraño apostraphe de Windows y después de probar varias cosas aquí, es el fragmento de código que funciona.
fuente
Tuve el mismo problema, pero fue porque copié y pegué la cadena tal como está. Más tarde, cuando escribí manualmente la cadena, ya que el error desapareció.
Tuve el error debido a la
-
señal. Cuando lo reemplacé con la introducción manual de un-
error se resolvió.Cadena copiada
10 + 3 * 5/(16 − 4)
Cadena escrita manualmente
10 + 3 * 5/(16 - 4)
Puedes ver claramente que hay una pequeña diferencia entre ambos guiones .
Creo que se debe al diferente formato utilizado por diferentes sistemas operativos o tal vez solo por un software diferente.
fuente
Para mí, el problema había causado debido a "'" ese símbolo en las comillas. Como había copiado el código de un archivo pdf, causó ese error. Acabo de reemplazar "'" por este "'".
fuente
Si desea detectar qué carácter causó esto, simplemente asigne la variable problemática a una cadena e imprímala en una consola iPython.
En mi caso
fuente
para mí, el problema fue causado al escribir mi código en Mac Notes y luego copiarlo de Mac Notes y pegarlo en mi sesión de vim para crear mi archivo. Esto hizo que mis comillas simples fueran del tipo curvo. Para solucionarlo, abrí mi archivo en vim y reemplacé todas mis comillas simples curvas con el tipo directo, simplemente quitando y volviendo a escribir el mismo carácter. Fueron Mac Notes las que hicieron que el mismo golpe de tecla produjera la comilla simple curva.
fuente
No pude encontrar cuál es el problema por mucho tiempo, pero luego me di cuenta de que había copiado una línea "UTC-12: 00" de la web y el guión / guión que estaba causando el problema. Acabo de escribir este "-" nuevamente y el problema se resolvió.
Entonces, a veces las líneas de copia pegadas también dan errores. En tales casos, simplemente vuelva a escribir el código copiado y funciona. Al volver a escribir, parecería que nada ha cambiado, pero el error desaparecerá.
fuente
Cuando tengo un problema similar al leer archivos de texto, uso ...
fuente