1.三种编码:ascii Unicode utf8
2.字符串和编码数字的两个函数:ord(字符转数字ord(‘A’)=65)和 chr(数字转字符chr(65)=A)
3.bytes存储编码,记住两个函数encode和decode
由于Python的字符串类型是str
,在内存中以Unicode表示,一个字符对应若干个字节。如果要在网络上传输,或者保存到磁盘上,就需要把str
变为以字节为单位的bytes
。
Python对bytes
类型的数据用带b
前缀的单引号或双引号表示。
‘ABC’.encode('utf-8')结果为b‘ABC’,>>> '中文'.encode('utf-8') -> b'xe4xb8xadxe6x96x87',
b'xe4xb8xadxe6x96x87'.decode('utf-8',erros='ignore') 如果bytes
中只有一小部分无效的字节,可以传入errors='ignore'
忽略错误的字节:
4.len()函数既可以统计字符数,也可以将字符串转换成bytes后统计字节数。
5.字符串格式化两种方式%和format(),如果要使用%z字符 请用%%
%s %d %f %x %.2f(浮点型保留两位小数)
>>> 'Hello, {0}, 成绩提升了 {1:.1f}%'.format('小明', 17.125) 'Hello, 小明, 成绩提升了 17.1%'
6.源代码开通两句,让python解释器在读取源码的时候按utf-8的编码读取。
#!/usr/bin/env python3
# -*- coding:utf-8 -*-
第一行注释是为了告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释;
第二行注释是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。
申明了UTF-8编码并不意味着你的.py
文件就是UTF-8编码的,必须并且要确保文本编辑器正在使用UTF-8 without BOM编码