Python MySQL 中文乱码问题

最近项目中用到了Python,遇到了中文乱码问题,结合网上的资料以及自己的摸索,总结如下:

  1.  Python文件设置编码 utf-8 (文件前面加上 #encoding=utf-8), 同时文件保存的格式也应该是utf8
  2. MySQL数据库charset=utf-8 ,数据库的编码必须是utf8
  3. python连接MySQL时加上编码参数 conn = MySQLdb.Connection(host=’localhost’, user=’root’, passwd=’123′, db=’test’,charset=’utf8′)
  4. 设置Python默认编码(个人感觉此无太多意义)

reload(sys)

sys.setdefaultencoding(‘utf-8’)

以上为网上普遍的步骤,但在我的代码仍然是乱码,于是我增加下面的操作,将查询结果转换为字符串,再把字符串编码为utf8。搞定!

tmp = str(row[2])
tmp = tmp.decode(‘utf-8’)

本文固定链接: http://www.ccsbbs.com.cn/archives/6211.html | 极限手指

该日志由 极限手指 于2013年03月26日发表在 Python 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: Python MySQL 中文乱码问题 | 极限手指

Python MySQL 中文乱码问题:等您坐沙发呢!

发表评论

您必须 [ 登录 ] 才能发表留言!