python 中文编码(unicode,gbk,utf8,ordinary string)

来源:互联网 发布:汇丰软件 劝退 编辑:程序博客网 时间:2024/05/18 17:26
环境(win 7 ,python2.6)   
    不得不说,python中的汉字处理却是很操蛋
    一个脚本,我是在pydev下开发的,编码为utf8。其中要处理excel表单,用的是xlrd模块,而xlrd提前excel信息的时候编码是unicode。还有数据库处理,MySQLdb,然后我要在这个脚本中处理一些在命令行中的命令。
    连接普通str与unicode的字符串,可以用在MySQLdb处理,但是如果要让这个字符串输出到命令行界面或者写入到文件中的话,则要转换为gbk,string.encode('gbk'),因为我们的命令行界面的字符集是gbk的,
    但是如果我们不是要把信息输出到命令行,而是输出到eclipse的控制台的话,则无所谓加不加.encode('gbk')
     处理excel表单,提取出来的一行信息是unicode的,row=sh.row_values(i)#row是excel的某一行信息
row是list型的,list是可变的数据类型,故所以可以将unicode的row转换为gbk的row
 for i in range(len(row)):
    if isinstance(row[i],unicode):
            row[i]=row[i].encode('gbk')


原创粉丝点击