2013-09-03 1 views
0

Я следую этому примеру How can I display native accents to languages in console in windows?, но я получаю сообщение об ошибке каждый раз, когда запускаю файл file.py с помощью командной строки Windows.Печать собственных акцентов на языки с помощью командной строки из окон

Я хотел бы напечатать

print u"Università".encode('utf-8') 

и ошибка:

File "C:\Users\samsung>C:\PythonScript\Script_fun\uni\uni.py", line 270 
SyntaxError: Non-ASCII character '\xc3' in file C:\Users\samsung>C:\PythonScript\Script_fun\uni\uni.py on line 270, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details 

Кроме того, добавление # кодирование = UTF-8 в качестве первой линии у меня есть следующие проблемы

Università 

вместо

Università 
+1

Вы читали PEP 263, как вы сказали об этом сообщении об ошибке? – geoffspear

+0

Я честный, но я не понял. Сожалею. –

+0

Вторая строка вашего файла Python должна быть '# coding = utf-8' (если вы сохранили файл в UTF-8, ваша кодировка может отличаться.) – geoffspear

ответ

1

Попробуйте это:

print u"Università".encode('utf-8') 
print u"Università".encode('437') 
print u"Università".encode('850') 
print u"Università".encode('1252') 

Если ваша система локаль EN-US, то вторая линия (437) будет корректно отображать.

Если теперь запустить:

chcp 1252 

, то последняя строка будет выглядеть хорошо.

Это потому, что консоль Windows, не использует UTF-8 (и, в общем, с * CKS при международной поддержке)

Вы можете запустить это:

chcp 65001 

установить консоль UTF-8 (это то, что 65001 означает в числовых кодовых страницах Windows), , но теперь дроссели Python (2,7, я не пробовал 3). И это потому, что Python 2.7 s * cks при международной поддержке :-)