2016-10-29 87 views
-2

我一直在python encondings有很多麻煩。在尋找答案時,我收到了許多答覆,但其中沒有一個真正起作用。然後,我發現了這種行爲:在python解釋器中運行命令與實際運行腳本的行爲不同。見:爲什麼運行python腳本與運行單個命令不一樣?

$ cat prueba.py 
print("{} con leche".format('Café')) 

$ python prueba.py 
    File "prueba.py", line 1 
SyntaxError: Non-ASCII character '\xc3' in file prueba.py on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details 

$ python 
Python 2.7.12+ (default, Sep 1 2016, 20:27:38) 
[GCC 6.2.0 20160927] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> print("{} con leche".format('Café')) 
Café con leche 
>>> 

任何人都可以解釋這一點給我嗎? (如果可能的話,還幫我的編碼問題)

+2

你按照錯誤消息中的鏈接,這充分說明了它? –

+0

[爲什麼Python在默認編碼是ASCII時打印unicode字符?]可能重複(http://stackoverflow.com/questions/2596714/why-does-python-print-unicode-characters-when-the-default-編碼是-ASCII) – Aurora0001

回答

2

您必須在腳本中加入編碼:

# -*- coding: utf-8 -*- 
print("{} con leche".format('Café')) 
相關問題