python基础学习-字符编码

一、字符编码总结:

1、内存固定使用unicode,我们可以改变的是存入硬盘采用格式

     英文+汉字-》unicode-》gbk

     英文+日文-》unicode-》shift-jis

     万国字符》-unicode-》utf-8

2、文本文件存取乱码问题 :

     解决办法:

                编码格式应该设置成支持文件内字符串的格式

                文件是以什么编码格式存如硬盘的,就应该以什么编码格式读入内存

3、python3默认编码:utf-8

    python2默认编码:ASCII

    没有指定encoding参数操作系统会使用自己默认的编码

    Linux系统默认编码:utf-8

    Windows系统默认编码:gbk  

4、python3的str类型默认保存为unicode格式,这块已做优化,无论如何都不会乱码,若要强制转换,则加上文件头修改编码格式(例如:# coding:utf-8)

     python2的str类型不乱码 x='上'

     1.字符串会按照文件头指定的编码格式存入 x=u'上' # 强制存称unicode '''(在字符前加上u)

     2.指定文件头修改默认编码:  # coding:当初文本编辑器所存的编码格式

没有哪个总结比egon老湿这个更详细了,通往大神的路在此~

https://zhuanlan.zhihu.com/p/108805502

 

原文地址:https://www.cnblogs.com/dingbei/p/12487294.html