2016-10-29 51 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é')) 
相关问题