Python 从数据库返回的中文,输出时是乱码

sinat_26000463 2015-02-13 09:01:31
我在Python的第一行,已经加了 # -*- coding:utf-8 -*-

使用Python的pymssql模块,返回了值 “EA组”(存储到变量 name 中),

然后判断值得编码格式
print type(name)
得到类型为<type 'unicode'>

但是print name时,得到的是 EA×é
我尝试了 print name.encode("utf-8"),还是一样的, EA×é



这个是什么原因,怎么改正???
...全文
390 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
sinat_26000463 2015-02-28
  • 打赏
  • 举报
回复
感谢大家的回复,我最后找到原因了,在使用pymssql时,参数encoding必须是"cp936",不能使gb2312或者utf8,可能和我们的操作系统是英文有关系。
lepricon 2015-02-25
  • 打赏
  • 举报
回复
print name.encode('latin-1').decode('gbk')
  • 打赏
  • 举报
回复
在某些IDE中,字符串的输出总是出现乱码,甚至错误,其实是由于IDE的结果输出控制台自身不能显示字符串的编码,而不是程序本身的问题。 你试着 print name.encode('gb2312')

37,721

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧