我正在嘗試使用字符串Düsseldorf。當我這樣做:用Python打印「Düsseldorf」
# -*- coding: utf-8 -*-
print "Düsseldorf"
它打印奇怪的字符。任何人都可以幫助我嗎?
非常感謝。
我正在嘗試使用字符串Düsseldorf。當我這樣做:用Python打印「Düsseldorf」
# -*- coding: utf-8 -*-
print "Düsseldorf"
它打印奇怪的字符。任何人都可以幫助我嗎?
非常感謝。
>>> print u"Düsseldorf"
Düsseldorf
最有可能的,你的編輯器沒有設置產生UTF-8輸出。將其設置爲輸出UTF-8應該可以解決問題。
可替代地,使用Unicode轉義:
print u"D\u00FCsseldorf"
注意string literals在Python 2.x的應用u
(對於Unicode)前綴。未預先固定的文字(如"Düsseldorf"
)會生成str
對象,它們是字節數組(儘管是名稱),而不是字符串。因此,在Python 2.x的一個正確配置編輯器,你想:
print u"Düsseldorf"
在Python 3.x中,這種情況已經讓str
對象整流代表,以及,字符串和引入bytes
類型字節數組,如b'D\xc3\xbcsseldorf'
。
我相信編碼的東西只能用於8位編碼......而Python仍然會在一定範圍內轉義字節碼。 – Noldorin