Python2和3字符编码的区别
Python2和3字符编码的区别 一、字符编码应用之Python 1.1 执行Python程序的三个阶段 Python test.py (再强调一遍,执行test.py的第一步,一定是先将文件内容从硬盘读入到内存中) test.py文件内容以gbk格式保存的,内容为: [ 阶段一:启动Python解释器 阶段二:Python解释器此时就是一个文本编辑器,负责打开文件test.py,即从硬盘中读取test.py的内容到内存中 此时,Python解释器会读取test.py的第一行内容, #coding:utf-8 或 #-*-coding:utf-8-*- ,以此决定以什么编码格式将代码读入内存,这一行就是设定Python解释器这个软件使用的编码格式。 可以用sys.getdefaultencoding()查看,如果不在Python文件指定头信息 #-*-coding:utf-8-*- ,那就使用Python默认的编码格式。 import sys sys.getdefaultencoding() Copy'utf-8' Python2中默认使用ascii,Python3中默认使用utf-8。 改正:在test.py指定文件头,字符编码一定要为gbk。即更正为 #coding:gbk 你好啊 阶段三:读取已经加载到内存的代码(Unicode编码格式),然后执行