一, 解决文件乱码问题: 加文件头, 字符串前面加 u
1. 内存固定使用的是 unicode, 可以改变的是存入硬盘的采用各式(utf-8)
2. 文本文件存乱是致命的
文本文件以什么编码模式存的, 就以什么编码格式取
3.python3 默认: utf-8
3.python2 默认: ASCII
指定文件头, 指定编码(与文件存储的编码格式一样)
在文件首行写:
# coding: 编码格式
4. 保证运行 python 程序前两个阶段不乱码的核心法则:
python2 要指定文件头
# coding: 文件当初存入硬盘时所采用的编码格式
5.python3 的 str 类型默认直接存为 unicoding, 不会乱码
python2 的 str 类型不会乱码
x = u'上'
二,
字符编码: 字符与数字的对应关系表 (字符编码表)
ASCII 表: 只支持英文字符, 采用 8 位的 2 进制数对应一个英文字串
GBK 表: 支持英文和中文
采用 8 位 (8bit=1Bytes) 的二精致对应一个英文字符
采用 16 位的二进制对应一个中文字符
unicode 表:
1. 兼容万国, 对老的字符都有相应的对应关系
2. 采用 16 位 (16bit=2Bytes) 二进制对应一个字符
老的字符编码可以转换成 unicode, 但是不能相互转换
字符编码
来源: http://www.bubuko.com/infodetail-3712092.html