关于python中文处理

昨天偶然帮韩小玲童鞋解决python的中文问题,修复了我的一个错误理解,首先感谢韩某提供宝贵的机会!

 

处理中文,归结于解码编码,总的方针是,先用字符串自身的编码格式解码为unicode,然后从unicode再编码成你需要的格式,比如gb2312

举个例子:

s= '中文'

直接print s 会报错,原因略

我现在想把它用gbk的格式打印出来。

首先,检查s的编码类型,python有个库,叫ch什么的,检测一下,比如说是gb2312格式的,则第一步,先解码为unicode:

s.decode('gb2312')  或者 unicode(s,'gb2312')

第二步,编码为你想输出的类型,本例为gbk

s.decode('gb2312').encode('gbk')

这样再打印出来应该就ok了。

另外,操作系统是中文的或是英文的,有影响。

posted @ 2011-04-07 14:43  Capricorn.python  阅读(700)  评论(2编辑  收藏  举报