Cuando traté de obtener el contenido de una etiqueta usando "unicode (head.contents [3])" obtengo el resultado similar a esto: "Christensen Sk \" xf6ld ". Quiero que la secuencia de escape se devuelva como una cadena. ¿Cómo hacerlo en Python?Cómo convertir secuencias de escape unicode a caracteres Unicode en una cadena de python
Respuesta
Suponiendo Python ve el nombre como una cadena normal, usted primero tendrá que decodificarlo a Unicode:
>>> name
'Christensen Sk\xf6ld'
>>> unicode(name, 'latin-1')
u'Christensen Sk\xf6ld'
Otra forma de lograr esto:
>>> name.decode('latin-1')
u'Christensen Sk\xf6ld'
Observe la "u" en frente de la cadena, indicando que es código. Si imprime esto, la letra acentuada se muestra correctamente:
>>> print name.decode('latin-1')
Christensen Sköld
Por cierto: cuando sea necesario, puede utilizar el método de "codificar" para activar el Unicode en, por ejemplo, una cadena UTF-8:
>>> name.decode('latin-1').encode('utf-8')
'Christensen Sk\xc3\xb6ld'
Sospecho que está funcionando correctamente. De forma predeterminada, Python muestra cadenas en codificación ASCII, ya que no todas las terminales son compatibles con Unicode. Si realmente imprimes la cadena, debería funcionar. Véase el siguiente ejemplo:
>>> u'\xcfa'
u'\xcfa'
>>> print u'\xcfa'
Ïa
Si el problema es con el terminal, ¿se mostrará correctamente si lo guardo en una base de datos (MySQL)? – Vicky
Sí, lo hará, pero debe ocuparse de la codificación de conjunto de caracteres/colación de su base de datos. – securecurve
Dada una cadena de bytes con Unicode escapa b"\N{SNOWMAN}"
, b"\N{SNOWMAN}".decode('unicode-escape)
producirá la cadena Unicode espera u'\u2603'
.
- 1. texto con secuencias de escape Unicode a Unicode en Python
- 2. ¿Cómo convierto las secuencias de escape Unicode a caracteres Unicode en una cadena .NET?
- 3. Convertir una cadena Unicode en una cadena ASCII de escape
- 4. cadena de Python a Unicode
- 5. Problema Unicode de doble escape Javascript
- 6. Cómo convertir UTF8 a Unicode
- 7. Reemplazar caracteres no ASCII de una cadena Unicode en Python
- 8. caracteres Unicode cadena
- 9. Python: Crear una cadena Unicode
- 10. Python - Pyrersing caracteres Unicode
- 11. Caracteres Unicode en cadena - iphone
- 12. ¿Cómo manejar las secuencias de caracteres Unicode en C/C++?
- 13. Python punto de código Unicode de caracteres Unicode
- 14. Convertir cadena de unicode a cadena de bytes
- 15. Python JSON load/dumps rompe Unicode?
- 16. ¿Cómo puedo detectar caracteres Unicode en una cadena de Java?
- 17. Cómo convertir una cadena UTF-8 en Unicode?
- 18. Transformar cadena unicode en python
- 19. Convertir entidades de caracteres a sus equivalentes Unicode
- 20. Caracteres Unicode de Base64ing
- 21. Convertir nombres de archivo de python a Unicode
- 22. ¿Cómo se puede unir una cadena unicode urlencoded en python?
- 23. Convertir o eliminar caracteres Unicode "ilegales"
- 24. Devolviendo los primeros N caracteres de una cadena Unicode
- 25. Python: Sanitize una cadena para Unicode?
- 26. conseguir bytes de cadena Unicode en Python
- 27. cadena Unicode en XML
- 28. ¿Cómo puedo escapar de una cadena Unicode con Ruby?
- 29. ¿Se puede evitar que Gson convierta "<" and ">" en secuencias de escape unicode?
- 30. Función de PHP para convertir unicode a caracteres especiales?
muchas gracias amigo. Entonces, si lo necesito para guardarlo en una base de datos, puedo decodificarlo y guardarlo en la base de datos, ¿verdad? – Vicky
NO, lea el ejemplo de Mark nuevamente. Después de decodificar los datos de lo que sea (latin1, cp1252, etc.) en Unicode, necesita codificar su cadena Unicode con una codificación que (1) su base de datos es compatible y (2) conserva todos los caracteres Unicode ... normalmente UTF-8 . –