您的位置:首页 > 编程语言 > Python开发

《Unicode之痛》摘抄

2015-08-30 16:45 666 查看
Unicode之痛原文链接

一、概念

计算机只能看懂
bytes
,计算机中一切均为
bytes
(字节):硬盘文件、网络传输、程序的输入、输出均由byte组成

Unicode 字符称为代码点(code point)用 U 后面加上 XXXX (其中, X 为16进制的字符)来表示字符

Unicode 标准定义了多种编码(encoding)方法将
bytes
表示成代码点;其中,对 Unicode 进行传播和存储的最流行编码方式为 UTF-8 ,它用不同的
bytes
来表示每一个代码点。

二、关于python

Python2 中,
str
对象存储的是
bytes
。带u前缀的字符串是“unicode” 对象,存储的是 code points

Unicode 字符串有 encode 方法来产生
bytes
bytes
字符串有 decode 方法转换成 unicode ;两种方法都需要指定编码类型

Python 3 中,
str
存储的是 unicode,
bytes
类型存储的是 byte 串。可以通过加b 前缀来制造 byte字符串

三、策略

输入时,将
bytes
流 解码成 unicode。

程序中均使用 unicode

输出时,编码成
bytes
流。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  unicode python