Python中的重音字母

时间:2016-02-27 13:30:43

标签: python syntax-error

有没有办法在python中定义带有重音字母的字符串? 一个极端的例子就是这个:

message = "ÂÃÄÀÁÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ"

错误:

SyntaxError: Non-UTF-8 code starting with '\xc2'

2 个答案:

答案 0 :(得分:4)

当源代码包含除ASCII之外的其他内容时,您必须添加一行来告诉python解释器:

#!/usr/bin/env python
# encoding: utf-8

详细了解PEP-0263中有关如何在魔术评论中包含编码提示的确切规则。

答案 1 :(得分:1)

如果您使用Python 3.x,则可以使用重音(Unicode)字符串而不执行任何特殊操作。如果您使用的是Python 2.x,请使用u前缀来表示Unicode:

message = u"ÂÃÄÀÁÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ"

还要记住在脚本的顶部包含以下行

# coding=utf-8

PEP-0263详细解释了这一点:

  

要定义源代码编码,必须使用魔术注释       作为第一个或第二个放入源文件       文件中的行,例如:

# coding=<encoding name>