xc3 - use ñ in python
¿Una cadena UNICODE que contenga caracteres ASCII siempre será igual a la cadena ASCII? (1)
Python 2 coacciona entre unicode
y str
utilizando el códec ASCII al comparar los dos tipos. Así que sí, esto siempre es cierto.
Es decir, a menos que sys.setdefaultencoding()
instalación de Python y utilices sys.setdefaultencoding()
para cambiar ese valor predeterminado. Normalmente, no puede hacerlo porque la función sys.setdefaultencoding()
se elimina del módulo en el momento de la puesta en marcha, pero existe un Cult de Carga en el que las personas utilizan reload(sys)
para restablecer esa función y cambiar la codificación predeterminada a algo más para tratar de solucionar problemas de codificación y decodificación implícita. Esto es algo tonto que hacer precisamente por esta razón.
Noté las siguientes presas:
>>> u''abc'' == ''abc''
True
>>> ''abc'' == u''abc''
True
¿Será esto siempre cierto o podría depender de la configuración regional del sistema? (Parece que las cadenas son unicode en Python 3: por ejemplo, esta pregunta , pero los bytes en 2.x)