python学习第四天

在python中可以用r‘ 。。。’来表示字符串,内部的字符串默认不转译。
空值:空值是python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。
//:除法,得到整数值
%:除法,得到余数
/:除法,得到浮点数

unicode编码
UTF-8 编码

python提供ord()函数,获取字符的整数表示,chr()函数把编码转换为对应的字符。

ord(“A”)
65

ord(‘中’)
20013

chr(66)
‘B’

如果知道字符的整数编码,还可以用十六进制这么写str:

‘\u4e2d\u6584’
‘中文’

两种写法等价。

由于python的字符串类型是str,在内存中以Unicode表示,一个字符对应若干个字节。如果要在网络上传输,或者保存到磁盘上,就需要变为以字节为单位的bytes。
python对bytes类型的数据用带b前缀的单引号或双引号表示:
x = b’ABC’
'ABC’与b’ABC’两者的内容虽然显示的一样,但是前者是str,后者的每个字符都只占用一个字节。

以Unicode表示的str通过encode()方法可以编码为制定的bytes,例如:

‘ABC’.encode(‘acsii’)
b’ABC’

‘中文’.encode(‘utf-8’)
b’\xe4\xb8\xad\xe6\x96\x87’

把bytes也就是从网络或磁盘读取的字节流转换为str,就需要用decode()方法:

b’ABC’.decode(‘ascii’)
‘ABC’

要计算str包含多少个字符,可以用len()函数

len(‘abc’)
3

如果len()计算的是bytes,这时len()函数就计算字节数:

len(b’abc’)
3

len(b’\xe4\xb8\xad\xe6\x96\x87’)
6

没事的时候坚持RTF-8编码对str和bytes相互转换。

python解释器读取源代码时,为了让它按UTF-8编码读取,我们通常在文件开头写上这两行:
‘# -- coding: utf-8 --’

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值