美文网首页
python编程(三级)1、编码、数制

python编程(三级)1、编码、数制

作者: 你在干嘛HJ | 来源:发表于2020-11-19 18:31 被阅读0次

    1、编码

    在计算机中使用的是二进制,(为什么呢,因为二进制计算简单,可以用电路表示等等很多优点)。但是二进制对阅读和使用是不友好的,因此需要将二进制转换为人类使用的语言,英语,中文等,这就是编码。

    最初的编码就是ASCII编码,美国信息交换码。它使用一个字节,8位二进制,可以表示128个符号。常用的1-9,26个字母以及一些英语符号等。

    ascii码表

    ascii表是不能表示中文的,因此中文也有专门的编码,诸如GB2312,GBK等。其它国家也有类似编码,因此为了方便信息的交流,也就有了统一编码,Unicode,又叫万国码。unicode用0-65535来表示所有字符,Unicode用2-4个字节存储。不同的存储方式,又不同的编码,这就是UTF-8,UTF-16,UTF-32。utf-8根据字符数字的大小,来决定存储字节,存储英文字符时用1个字节,存储汉字时用2个字节。utf-16,两个字节,utf-32,四个字节。

    python3 在内存中使用的是Unicode,万国码,默认的编码是utf-8。

    编码 编解码关系

    2、python中编解码函数

    chr() ,转换为对应Unicode表字符

    ord(),转换为对于Unicode表数字

    encode(),编码,将str转换为字节流

    decode(),解码,将字节流转换为str


    3、数制

    计算机存储数据的格式是二进制,日常和数学中使用的数字是十进制,为了表达简化,因此有了十六进制、八进制。

    二进制---->十进制---->八进制---》十六进制

    10000001  ---》129  ---》201---》81

    从上式可以看出来,进制越大,表达更大数时更简化。


    4、数制转换

    二进制转十进制  ,按权展开相加

    十进制转二进制,除基取余

    二进制转八进制 ,从右往左,取3位转换为十进制得到即为8进制,不足3位左边补0。

    八进制转二进制,每位展开得到3个二进制位

    二进制转十六进制,,从右往左,取4位转换为十进制得到即为16进制,不足3位左边补0。

    十六进制转二进制,每位展开得到四个二进制位


    5、python数制转换函数

    int() ,

    hex(),转换为16进制

    bin(),转换为二进制

    oct(),转换为八进制

    相关文章

      网友评论

          本文标题:python编程(三级)1、编码、数制

          本文链接:https://www.haomeiwen.com/subject/wlgkiktx.html