Python 2 esercita una coercizione tra unicode
e str
utilizzando il codec ASCII quando si confrontano i due tipi. Quindi sì, questo è sempre true.
Vale a dire, a meno che non si incasini l'installazione di Python e si usi sys.setdefaultencoding()
per modificare quell'impostazione predefinita. Non è possibile farlo normalmente, perché la funzione è stata cancellata dal modulo al momento dell'avvio, ma c'è un Culto Cargo in giro dove la gente usa reload(sys)
per ripristinare quella funzione e cambiare la codifica predefinita in qualcos'altro da provare risolvere i problemi impliciti di codifica e decodifica. Questa è una cosa stupida da fare proprio per questa ragione.
fonte
2015-02-20 11:17:37
I caratteri nel set ASCII sono indipendenti dalla codepage. Sono solo i caratteri estesi (da 0x80 a 0xff) che possono differire tra le impostazioni locali. – Phylogenesis
@Phylogenesis: ci sono un sacco di codifiche che * non * usano ASCII come base. –