文本文件的编码格式
文本文件的编码格式,都在3A服务器上进行测试
一、文本文件
- 文本文件存储的内容是基于 字符编码 的文件,常见的编码有
ASCII
编码,UNICODE
编码等
Python 2.x 默认使用
ASCII
编码格式
Python 3.x 默认使用UTF-8
编码格式
二、ASCII 编码和 UNICODE 编码
2.1 ASCII
编码
- 计算机中只有
256
个ASCII
字符 - 一个
ASCII
在内存中占用 1 个字节 的空间8
个0/1
的排列组合方式一共有256
种,也就是2 ** 8
2.2 UTF-8
编码格式
- 计算机中使用 1~6 个字节 来表示一个
UTF-8
字符,涵盖了 地球上几乎所有地区的文字 - 大多数汉字会使用 3 个字节 表示
UTF-8
是UNICODE
编码的一种编码格式
三、Python 2.x 中如何使用中文
Python 2.x 默认使用
ASCII
编码格式
Python 3.x 默认使用UTF-8
编码格式
- 在 Python 2.x 文件的 第一行 增加以下代码,解释器会以
utf-8
编码来处理 python 文件
# *-* coding:utf8 *-*
这方式是官方推荐使用的!
- 也可以使用
# coding=utf8
3.1 unicode 字符串
- 在
Python 2.x
中,即使指定了文件使用UTF-8
的编码格式,但是在遍历字符串时,仍然会 以字节为单位遍历 字符串 - 要能够 正确的遍历字符串,在定义字符串时,需要 在字符串的引号前,增加一个小写字母
u
,告诉解释器这是一个unicode
字符串(使用UTF-8
编码格式的字符串)
# *-* coding:utf8 *-*
# 在字符串前,增加一个 `u` 表示这个字符串是一个 utf8 字符串
hello_str = u"你好世界"
print(hello_str)
for c in hello_str:
print(c)