Das Beispiel in diesem Artikel beschreibt das Problem des verstümmelten Codes, der beim Ausführen von Python-Dateien im Windows-Befehlsfenster generiert wird. Als Referenz:
Ps: Bitte korrigieren Sie mich, wenn es Fehler gibt. Willkommen zum Austauschen und Lernen >
# -*- coding:utf-8 -*-str = "彦雪"print str
褰﹂洩
Wenn chinesische Zeichen darin enthalten sind, wird das Der Python-Interpreter meldet im Allgemeinen einen Fehler.
Aber wenn UTF-8-Kodierung angegeben ist, meldet Python keinen Fehler mehr
"# -
- programming:utf-8 --" gibt an dass der Python-Quellcode in UTF-8 kodiert ist.
Da Python keine direkte Konvertierung von utf-8 in gbk zulässt, müssen Sie utf-8 zuerst in Unicode und dann in gbk konvertieren
, wenn gedruckt werden muss Bei der Ausgabe ruft Python zunächst das Codierungsformat des Zeichenausgabeprogramms (Befehlszeile oder Ausgabefunktion) auf und codiert dann die Zeichenfolge in die vom Zeichenausgabeprogramm verwendete Codierung (sodass das Zeichenausgabeprogramm nicht angezeigt wird, weil dies der Fall ist). erkennt die Codierung nicht) Verstümmelte Zeichen), und dann gibt das Zeichenausgabeprogramm die codierten Zeichen an das Ziel aus.Lösung
# 方法一 中文前加u, 告诉Python解释器后面的是个unicode编码str = u"彦雪"
# 方法二 str.decode('utf-8') 以utf-8编码对字符串 str 进行解码, 获取unicodestr = "彦雪".decode('utf-8')
# 方法三 unicode(str, 'utf-8') 将字符串 str 以utf-8编码解码, 获取unicodestr = unicode('彦雪','utf-8')
# 方法1 str.encode("gbk") 将unicode转为gbk 编码content = raw_input(u"输入内容: ".encode("gbk"))
# 方法2content = raw_input("输入内容: ".decode('utf-8').encode("gbk"))
# 方法3content = raw_input(unicode('输入内容: ','utf-8').encode("gbk"))
Obwohl diese Schreibmethode sehr praktisch ist, empfehle ich persönlich nicht, chinesische Schriftzeichen und raw_input zu verwenden der Zweck, in derselben Zeile zu sein
Erweiterte LektürePython-Codierungshinweise# -- programming:utf-8 --
PEP 263 – Definieren von Python-Quellcode-KodierungenEinige Recherchen zu Python-Kodierung, verstümmelten Zeichen und Unicoderaw_input-Eingabe, Dateilesen, Variablenvergleich und andere Probleme bei der Konvertierung von str, unicode, utf-8 ErkundungFinden Sie sich im Wissensaustausch wieder und genießen Sie die Freude am Programmieren
Das obige ist der detaillierte Inhalt vonPython2.7 gibt verstümmelte chinesische Zeichen im Windows-Befehlsfenster aus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!