Python编码问题

Tag:python,Encoding,unicode

 

     现有的字符编码:ASCII,GBK,GB2312,UTF-8,Unicode......Unicode可以用来表示所有语言的字符,而且是定长双字节(也有四字节的)编码,包括英文字母在内。

    Python中定义一个Unicode字符串和定义一个普通字符串一样简单,引号前小写的“u”表示这里创建的是一个Unicode字符串。
>>> s=u'Hello World !'
    代码文件中的字符串,经过decode以后,被转换为统一的unicode格式的内部数据,类似于u'*'。unicode数据可以使用encode函数,再自由转换为其他格式的数据,相当于一个统一的平台。

 

将输入的gb2312格式的数据解码为unicode
>>> '你好'.decode('gb2312')
u'/u4f60/u597d'
输入数据的格式取决于所用shell终端的编码设置。

 

解码同时转换为utf8
>>> '你好'.decode('gb2312').encode('utf8')
'/xe4/xbd/xa0/xe5/xa5/xbd'
 

如果你有一个特定编码的字符串,想要把它转为Unicode字符集,可以使用uncode()函数,它以编码名做为第二个参数。
>>> unicode('你好', 'gb2312')
u'/u4f60/u597d'

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值