Vergleich von string und unicode in Python 2.7.5

Ich Frage mich, warum, wenn ich machen:

a = [u'k',u'ę',u'ą']

und geben Sie dann ein:

'k' in a

Bekomme ich True, während:

'ę' in a

mir False?

Es gibt mir wirklich Kopfschmerzen und es scheint, jemand hat das mit Absicht, um die Leute verrückt...

  • Für was es Wert ist, dieses sich so verhält, wie Sie erwarten, dass in Python 3.
  • Auf meinem Python (2.7.2), dies löst die Warnung UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode - interpreting them as being unequal vor der Rückkehr False, das ist der Grund dafür. Mit u'ę' in a funktioniert wie erwartet.
  • Quelle?
  • Nur ich klebte es in mein Dolmetscher.
  • Hat der interpreter die Verarbeitung von unicode-Eingabe?
  • Ich bin mit python 2.7.15, 'ę' in a ist Wahr, das ist seltsam...

InformationsquelleAutor Kulawy Krul | 2013-11-14
Schreibe einen Kommentar