python编码问题

在oracle数据库中,很多情况下使用GBK字符集,一遍情况下传入SQL语句没有任何问题,但是当用SQL中包含中文时都会发生一些比较诡异的事情。
一般在编写python代码的时候会在文件开头会标注字符集

/# * coding:utf-8 *

此处紧表示 因为我们pythonIDE中的字符集默认是UTF-8。
如果要正确输出,我们需要首先对读入的字符串以GBK编码形式进行解码然后再以UTF-8形式进行编码:

text = data.loc[:,'text']
text = pd.Series([text[item].decode('GBK').encode('UTF-8') for item in text])

str1 = u.encode('gb2312') # 以gb2312编码对u进行编码,获得bytes类型对象
u1 = str1.decode('gb2312') # 以gb2312编码对字符串str进行解码,获得字符串类型对象

posted on 2018-05-24 14:29  awei1391  阅读(79)  评论(0编辑  收藏  举报

导航