1 编码

  python解释器在加载 .py 文件中的代码时,对内容默认进行ascill编码,因此存在中文会报错,所以需要告诉python解释器,用什么编码来执行源代码。)

  ASCII码,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256,所以,ASCII码最多只能表示 256 个符号。

  Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有的字符和符号最少由 16 位来表示(2个字节),即:2 **16 = 65536。

  UTF-8,是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类:ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存...    

问题:python程序在windows终端下乱码 

  Windows的默认编码为GBK,Linux的默认编码为UTF-8。

  python2.7 中utf-8转gbk需先转成unicode再由unicode转成gbk。

  

 

  decode:解码

  encode:编码

  python3中可直接由utf-8转成gbk。python3内部会先把utf-8转成unicode再由unicode转成gbk。(python3中unicode也就没有了)

最新文章

  1. MVC3.0 项目升级到 MVC4.0
  2. 跨域http请求
  3. HTML文档中头部文件介绍
  4. 华为OJ题目:刷题
  5. Unity 3D 中自动寻路 和 跟随转向 探析
  6. 转:python webdriver API 之简单对象的定位
  7. (easy)LeetCode 219.Contains Duplicate II
  8. python中get、post数据
  9. Lambda表达式的由来
  10. HTML5要点(二)
  11. 高度关注!国务院对A股发出强烈信号↓
  12. 团队作业8——Beta 阶段冲刺7th day
  13. hadoop超租约报错:
  14. NOIP初赛 之 逻辑运算
  15. JAVA_SE基础——70.Math类
  16. SpriteBuilder中关于大量CCB文件的数字命名建议
  17. 【Mybatis】一对多实例
  18. Django--django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE
  19. 001.LVM简介
  20. 20155212 2016-2017-2《Java程序设计》课程总结

热门文章

  1. java 并发容器一之ConcurrentHashMap(基于JDK1.8)
  2. 面向对象super内置函数(转)
  3. plpgsql: 动态插入数据 1
  4. 解决 FusionCharts3.2.1 首页无法载入的问题
  5. Azure 项目构建 – 构建和部署 .NET 应用程序
  6. 一个具体的例子学习Java volatile关键字
  7. lwz-过去一年的总结(15-16)
  8. WPF中HyperLink超链接的使用
  9. 分布式文件系统ceph介绍
  10. 新数据的GT列表