非ASCII字符的SyntaxError
我想parsing包含一些非ASCII cheracter的xml,
代码如下所示
from lxml import etree from lxml import objectify content = u'<?xml version="1.0" encoding="utf-8"?><div>Order date : 05/08/2013 12:24:28</div>' mail.replace('\xa0',' ') xml = etree.fromstring(mail)
但它显示了我的错误行'内容= …'就像
syntaxError: Non-ASCII character '\xc2' in file /home/projects/ztest/responce.py on line 3, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
在terminal它正在工作,但在eclipse IDE上运行时,它给我一个错误。
不知道如何克服..
您应该定义源代码编码,将其添加到您的脚本的顶部:
# -*- coding: utf-8 -*-
它在控制台和IDE中的工作原理可能是由于不同的默认编码集。 你可以通过运行来检查它:
import sys print sys.getdefaultencoding()
另请参阅:
- 为什么要在python中通过string来声明unicode?
- 更改Python的默认编码?
- 正确的方式来定义Python源代码编码