12.文本编码
文本文件的编码格式
文本文件存储的内容是基于字符编码的文件,常见的编码有ASCII编码,UNICODE编码
python 2.x 默认使用ASCII编码
python 3.x 默认使用UTF-8编码
ASCII编码和UNICODE编码
ASCII编码
计算机中只有256个ascii字符
一个ascii在内存中占用一个字节的空间
8个0/1的排列组合方式一共有256种,也就是 2 ** 8
ASCII编码是早起使用的针对英文的
UTF-8编码格式
计算机中使用1-6个字节来表示一个UTF-8字符,涵盖了地球上几乎所有地区的文字
大多数汉字会使用3个字节表示
UTF-8时UNICODE编码的一种编码格式
所以python2.x默认是不支持中文的
python3.x使用utf-8是支持中文的
python2.x使用中文
在python2.x文件的第一行增加一行注释声明编码格式,解释器会以utf-8编码来处理python文件
以上两种方法,使用一种即可
python2.x中unicode字符串
在python2.x中,即使指定了文件使用UTF-8的编码格式,但是在遍历字符串时,仍然会以字节为单位遍历字符串
要能够正确的遍历字符串,在定义字符串的时候,需要在字符串引号前面+一个小写字母u,告诉解释器这是一个unicode字符串(使用utf8编码格式的字符串)
风月都好看,人间也浪漫.