python开发中编码相关问题
Posted maxiaohei
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python开发中编码相关问题相关的知识,希望对你有一定的参考价值。
Python2的解释器默认以 ascii码的编码方式进行编码,由于ASCII码只占一个字节126个包含英文和特殊字符,不能正常解码,所有要在文件开头声明编码方法‘# codeing:utf-8’
python2中的 str是以byte类型存储的
python3中解释器默认以utf-8的编码方式进行编码和解码,所有不存在中文编码错误
len(‘ab‘) >> 2
len(‘‘中国‘‘) >> 2
str类型在以字符个数计算
len(‘ab‘.encode(‘utf-8‘)) >> 2
len(‘中文‘.encode(‘utf-8‘)) >> 3
ascii 编码只解决了英文编码问题
unioncode 解决了全球文字统一编码问题,但是所有字符都占有四个字节
utf-8 为了节省空间,而且保留之前ascii编码的文件系统设计的一种变长的编码规则,英文和特殊字符继续保持ascii编码占一个字符,中文在utf-8编码中一个文字占有三个字节
以上是关于python开发中编码相关问题的主要内容,如果未能解决你的问题,请参考以下文章
我的第一个python web开发框架——开发前准备工作(了解编码前需要知道的一些常识)