4.字符串和编码

1.计算机只认识数字,因此字符串被转换为数字进行表示。因此出现了编码,最早的编码是ASCII码

 

2.随着不同的语言接入计算机系统,出现了不同的编码。例如要将汉子输入计算机,出现了GB2312编码,要将俄语输入计算机出现了windows-1251编码等

 

3.随着编码越来越多,跨过跨地区的网上交流出现了混乱,在多语言的环境下不能正常显示所有的语言信息

 

4.于是统一的Unicode标准编码应运而生,多编码之间出现的混乱问题。计算机系统中默认使用的就是Unicode编码

 

5.但是Unicode编码占两个字节,对于像英语类的信息存储带来额外的存储开销,也不便于网络的传输

 

6.因此UTF-8这种可变长的编码应运而生。

 

7.计算机及服务器和浏览器之间字符编码转换如下图所示

4.字符串和编码

 

8.python默认是以Unicode为编码的,因此Python支持多语言。python程序中输出中文不会有问题

4.字符串和编码

 

9.ord()函数获取字符的整数表示

4.字符串和编码

 

10.chr()将对应的编码转换为字符

4.字符串和编码

 

11.在存储或网络传输的时候,需要将字符串转换为字节。python中使用b前缀表示字节

4.字符串和编码

 

12.字符串可以通过encode()方法将字符串编译为指定的字节,汉字编译为ASCII编码的字节会出错

4.字符串和编码

 

13.从磁盘存储或网络读取数据的时候,读到的数据是字节,我们需要根据该字节使用的编码集解码出字节对应的字符,使用decode()方法

4.字符串和编码

 

14.len()函数,用于计算字符串中有多少个字符,若是字节,则该方法计算字节的长度

4.字符串和编码

 

15.在保存python的py文件的时候,通常在头部添加如下语句:第一句用于指定Unix环境下Python解释器,第二句指定后,当python解释器读取代码时按照utf-8编码格式读取,当然保存的时候,py文件必须保存为utf-8格式

#!/usr/bin/env python3

# -*- coding: utf-8 -*-

 

16.字符串的格式化:python中使用%实现字符的格式化,%d表示整数,%f表示浮点数,%s表示字符串,%x表示十六进制整数

4.字符串和编码