字符串编码(ACSII码表)

字符串编码

  • 我们就要学习如何将我们的文字转成计算机可以识别的文中子

  • 如何将数据存放到硬盘中就是我们要学的

【1】字符编码的发展史

  • 一家独大

    • ACSII码表

    • 大写英文字母 A-Z : 65 -90

    • 小写英文字母 a-z : 97-122

    • 数字 0 - 9 : 48 - 57

  • 诸侯割据

    • 日本出现了Shift_JIS

    • 中国 GBK

    • 韩国人Euc-kr

  • 一统天下

    • 大家统一意见,合理开发一个编码表,作为所有国家的标志

    • Unicode : 存在所有语言中的所有字符与数字的一一对应关系,即兼容万国字符

    • 美国人--ascii ---> unicode ----> gbk ---> 中文

    • 日本人--shift-jis ---> unicode ----> gbk ---> 中文

【2】进行编解码(二进制)

  • 解码 ---> 将二进制数据转换为字符

 data = b'\xe8\x9a\xa9\xe6\xa2\xa6'
 print(data.decode('utf-8'))#我们用的最多的
 print(data.decode('gbk'))
 print(data.decode('shift-jis'))
​
 name = b'dream'#(转为二进制)
 print(type(name))
  • 编码 ---> 将字符转换为二进制数据

name = "解释器"
print(name.encode("utf-8"))

【3】UTF-8的诞生(了解即可)

【1】开始的方案

  • 如果保存到硬盘的是GBK格式二进制,当初用户输入的字符只能是中文或英文

  • 同理如果保存到硬盘的是Shift_JIS格式二进制,当初用户输入的字符只能是日文或英文……

  • 多国字符—√—>内存(unicode格式的二进制)——X—>硬盘(GBK格式的二进制)

  • 多国字符—√—>内存(unicode格式的二进制)——X—>硬盘(Shift_JIS格式的二进制)

  • 多国字符—√—>内存(unicode格式的二进制)——√—>硬盘(???格式的二进制

【2】解决方案(用UTF-8)

  • 多国字符—√—>内存(unicode格式的二进制)——√—>硬盘(utf-8格式的二进制)

【3】UTF8不够用

  • 颜文字 ---> utf8mb4

【4】 补充

  • 随着时代的发展 可能 unicode 就被淘汰了 只剩下 utf8

【4】扩展

  • 在Python2.几版本的时候

  • 文件开头

    • --*-- utf-8

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值