python写入mysql时候 出现'latin-1' codec can't encode character 问题解决方法 以及python设置utf-8

第一次用python写点东西,在捣鼓半天了解了下关于数据库操作,但是在写入数据库时出现'latin-1' codec can't encode character in position 1-4 异常

看到latin-1,不负责猜想是关于编码的问题,于是想到python在刚试验时候关于utf-8的问题

解决办法:

在连接数据库代码中加入编码设置:

conn=MySQLdb.connect(host='127.0.0.1',user=user,passwd=pwd,db=database,port=3306,charset="utf8")

重新跑代码,问题解决。

在网上查问题时候找到另外一个解决方式:

在连接数据库成功以后调用.set_character_set('utf8')设置编码格式,其实与上面方法相同

coon.set_character_set('utf8')

 

此外,如果python中出现中文,或者出现其他编码格式问题,可在.py文件开头第一行设置 #coding=utf-8 基本能够解决问题(注意utf-8为小写)

 

以上基于Python 2.7.6

 

posted @ 2014-04-14 14:33  C_Paradox  阅读(9787)  评论(1编辑  收藏  举报