2019-05-5 day2 字符编码

key point:

乱码产生原因:
首先,内存中的编码都是Unicode;而由内存向硬盘保存的时候人为要指定一个字符编码,比如说是GBK,这时就是由Unicode转化称GBK,当把这个硬盘文件重新在内存读取的时候也要告诉计算机按照GBK编码来读取,它才会对应的把数据由GBK编码反解成Unicode编码写入到内存。如果此时计算机是按照其他方式编码写入内存就出现乱码。

避免乱码:
文件用什么编码保存的,就用什么编码读取

python3 中编码:

在Python3中所有的字符串都是用unicode编码来保存(不需要前面加“u”),字符串的数据类型也只有一个,就是str,只要是用unicode来保存的,那么所有的字符串在任何情况下都不会出现乱码

文件打开的编码:

如果不指定字符编码,默认打开文件的字符编码与操作系统相匹配:
Windows系统(中国大陆用户):gbk
Liunx系统:utf-8
MacOS:utf-8

你可能感兴趣的:(2019-05-5 day2 字符编码)