2018-03-20
##编码格式 目前我们在用python开发项目中经常使用的编码格式是gbk和utf-8.但是python内部为了效率都是用的unicode的双字节编码格式. 为什么会有这个几个的编码格式?
##为什么在要文件头加上类似#encode这样的一行 用#encode的原因是告诉编译器我们这个文件是需要用什么解码器器来编解码.
##为什么有的文件用u’‘这样来表示字符串 python中在字符串前面加上u即(u’‘)跟文件的物理编码没有关系.只是加载到内存中自动用unicode编码来表示.原理是python先将源文件中的源码用#encode=utf8 这个声明中的编码去解析,解释逻辑根据上面中的情况,如果解析成功了,会自动转乘unicode编码保存在内存中.
以r开头的字符,常用于正则表达式,对应着re模块。
##为什么我的文件格式和文件头是对应的还是会出现乱码? 最终字符能不能正常显示还要看控制台用的是什么编码格式.正常应该用编码格式和解码格式还有控制台的显示的编码格式统一
python默认的编码格式sys.getdefaultencoding()可以获取,多数情况是ascii码.
有什么问题加微博讨论van1988ch