涉及特殊字符的Python编码问题

时间:2013-09-03 21:29:29

标签: python encoding

我正在运行Win7 x64并且安装了Python 2.7.5 x64。我正在使用Wing IDE 101 4.1。

出于某种原因,编码搞砸了。

special_str = "sauté"
print string
# sauté
string
# 'saut\xc3\xa9'

我不明白为什么当我尝试打印它时,它会变得奇怪。当我把它写到记事本文本文件时,它出来是正确的(“sauté”)。问题在于,当我在字符串上使用BeautifulSoup时,它出现包含奇怪的字符串“saut├⌐”,然后当我将其输出回csv文件时,我最终得到一个包含该奇怪位的html块。救命啊!

1 个答案:

答案 0 :(得分:0)

您需要声明源文件的编码,以便Python可以正确解码您的字符串文字。

您可以使用文件顶部的特殊注释(第一行或第二行)执行此操作。

# coding:<coding>

其中<coding>是保存文件时使用的编码,例如utf-8