Python入门(一)——变量 编码等基础

一:编码简介

1、ASCII码占用字节数

ASCII编码中的字符每一个占用8bits,一个字节

2、GB编码

中文初是使用ASCII码中的扩展位实现编码的,与中文扩展表实现一一对应的关系

以此为基础的编码有:

GB2312 1980年 6763字 682字符

GBK1.0 1995年 21003字

GB18030 2000年 27484字(包括藏文等少数民族语言)

中国要求PC系统必须支持GB18030,嵌入式硬件不作要求

3、编码进一步发展

为了整合各个国家的映射,出现了国码:

Unicode,其中包括:

unicode: utf-32:一个字符占4bytes

unicode: utf-16:所有的占2bytes或大于2bytes

unicode: utf-8 英文等ASCII码表中的占一个字节,中文占3bytes,欧文占2bytes

统称的unicode是向下兼容GB的,因此使用unicode编码的文件在GB编码的终端中可以正常显示中文

但是utf-8由于重新改变编码数据结构,因此并不兼容unicode,因此需要转码解码等操作。

4、Python中的编码规则,转码解码操作

(1)Python默认编码:

Python3.0 默认编码是unicode(也就是代码中的汉字以unicode进行存储)

Python2.0 默认编码是ASCII码

(2)2.0软件使用中文的方式:

#!coding:utf-8

用这个语句告诉Python以下编码按照utf-8进行编码

(3)Python编码解码语法简介

#!coding: utf-8
#解码
s = '赵’
s_to_unicode = s.decode('utf-8') #Python3.0 默认编码unicode
unicode_to_gbk = s_to_unicode.decode('gbk') #讲unicode编码为gbk

5、个人理解层面

编码需要清楚终端显示软件的显示编码规则,比如在cmd中,显示是gbk,这个编码规则对于汉字是支持的,而用unicode编码的程序也是可以在此显示的,所以如果Python软件指定编码为utf-8的话会将代码中的汉字按照另外一种形式进行编码,不会再支持unicode和gbk中的汉字编码,会导致在cmd中的汉字以乱码的形式进行显示

而Python中的编码方法,decode和encode是将内容按照制定的方式进行编码,中间转换的标准就是unicode

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值