Python字符编码与二进制-创新互联

Python字符编码与二进制?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

为白水等地区用户提供了全套网页设计制作服务,及白水网站建设行业解决方案。主营业务为网站设计、做网站、白水网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

二进制

核心思想:

冯诺依曼 + 图灵机

  电如何表示状态,才能稳定?

    计算机开始设计的时候并不是考虑简单,而是考虑能自动完成任务与结果的可靠性,
    简单始终是建立再稳定、可靠基础上

    经过尝试10进制,但很难检查电流的状态差异并且很难稳定状态,最稳定的检查是
    通电和不通电状态,共两种状态那就规定 通电为 1 不通电 为 0,1和0的状态逻
    辑被称为比特 Bit

  那么如何用 0 和 1 表示数字和字符呢?

    首先找出需要表示的字符,英文字符和数字字符才100多个,需要 7 个二进制位就
    可以全部表示,但为了可扩展性,多出一位表示扩展,这就是ASCII码

    因为一个字符只需要最多8个二进制位表示,所以规定8个字节作为存储单位,所有
    8 Bit = 1 Byte

    规定字符用数字表示,数字用二进制表示,也就是 字符 --> 数字 -- > 二进制,
    那么文本信息就可以通过计算机存储为二进制,计算机上存储的二进制数可以逆转
    成文本信息

    10 进制到二进制之间的关系转换是固定的,那么字符到数字之间的转换被我们称为
    字符编码, ASCII码 Unicode UTF-8 都是存储字符与数字之间的映射关系

 弄清楚几个关系

  1. 字符与数字之间的关系为映射关系,人为规定的标准

      这种映射关系,生活中普遍存在,如

    a. 身份证信息与身份证号码

    b. 数据库id与该行信息

    c. 订单信息与订单编号

    d. 员工编号与员工

    e. 字典的键与值

    f. 内存地址与存储在该地址上的值

    ...

  2. 数字到二进制之间的关系,这个如同数学或物理定律一样,固定转换方式,写死的

  3. 8进制 16 进制都是建立在2进制的基础上,和10进制之间没有直接关系,主要为了

   可读性,二进制的两种表示形式

   如二进制 00000000 一个存储单位,八进制000 000 000 每 3 个二进制位转

   换位10进制表示,最小数为 0 大数为 7,所以取值范围为 0 - 7

   十六进制 0000 0000 每 4个二进制位转换位10进制表示,最小位为0 大为15,

   所有取值范围为 0 - 15,因为超出10机制表示范围所以用 abcdef表示 10 11

   12 13 14 15

   十六进制常用于 内存地址表示 IPv6地址 颜色表 mac地址 二进制数据\x前缀b/B

    IP地址(32位 点分十进制) x.x.x.x 每个x都是8个bit位表示的十进制数字

  # 8进制 16进制是建立在二进制的基础之上

Py进制转换函数

  10进制转其他进制

    转2进制 bin 前缀0b

    转16进制 hex 前缀0x

    转8进制 oct 前缀0o

    # 二进制 八进制 十六进制都是通过带前缀的字符串形式"0b/o/x..."

# 10 进制转其他进制
number = 9999
print("10进制转其他进制".ljust(40, "*"))
# 10 进制转2进制
b_number = bin(number)
print("二进制:", b_number)
# 10进制转8进制
o_number = oct(number)
print("八进制:", o_number)
# 10进制转16进制
h_number = hex(number)
print("十六进制:", h_number)

当前标题:Python字符编码与二进制-创新互联
链接URL:http://azwzsj.com/article/coijhi.html