Python 编码处理之 str与Unicode的区别与使用(二)

转自:http://www.weidianyuedu.com/content/3013896012404.html

str 和 unicode
str和unicode都是basestring的子类

所以有判断是否是字符串的方法

def is_str(s): return isinstance(s, basestring)

str和unicode 转换

str -> decode(‘the_coding_of_str‘) -> unicode unicode -> encode(‘the_coding_you_want‘) -> str

区别

str是字节串,由unicode经过编码(encode)后的字节组成的

声明方式

s = ‘中文‘ s = u‘中文‘.encode(‘utf-8‘)
type(‘中文‘) <type ‘str‘>
求长度(返回字节数)

u‘中文‘.encode(‘utf-8‘) ‘\xe4\xb8\xad\xe6\x96\x87‘
len(u‘中文‘.encode(‘utf-8‘))
6
unicode才是真正意义上的字符串,由字符组成

声明方式

s = u‘中文‘
s = ‘中文‘.decode(‘utf-8‘)
s = unicode(‘中文‘, ‘utf-8‘)
type(u‘中文‘) <type ‘unicode‘>
求长度(返回字符数),在逻辑中真正想要用的

u‘中文‘ u‘\u4e2d\u6587‘
len(u‘中文‘)
2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值