Fluent Python

文本与字节序列

2017-12-28  本文已影响25人  一块大番薯

字符问题

字符的标识:码位,是数字,如 Unicode 标准下 A 的码位是 U+0041
字符的具体表述取决于编码:如 A(U+0041)在 UTF-8 下编码成 \x41

字节概要

(1)bytes 不可变,bytearray 可变
(2)bytes 与 bytearray 各元素是 range(256) 中的一个
(3)切片返回同类型的二进制序列
(4)二进制序列是整数序列,字节的值有三种表现形式:ASCII (空格到~)、\t \r \n \\、十六进制转义


bytes 和 bytearray

编解码器(codec,encoder、decoder)

处理文本文件

不能依赖设备默认编码,打开文件是应明确传入 encoding 参数


encoding

默认使用文本模式,即 TextIOWrapper,我的设备默认编码是 cp936
'rb' 表示二进制模式读取文件,返回 BufferedReader 对象


对象

此处省略了非常多很少见的情况。

杂谈
上一篇下一篇

猜你喜欢

热点阅读