basic专栏 05.文件操作 01.字符编码与解码

# ASCII码表
"""
8bit 1Bytes 可存储256个字符 0-255
只支持英文字符

"""
# GBK码表
"""
英文 8bit 1Bytes 可存储256个字
中文 16bit 2Bytes 可存储65536个字符 0-65535
可存储大部分中文字符 中国人编制
以GBK格式存入硬盘,其他国家无法使用,不建议存储

"""
# Unicode码表
"""
多数字符 16bit     2Bytes [英文多时,2字节占空间,IO延迟长]
个别字符 32/64bit  4/8bytes
存储了万国字符
与原来其他国家自定义的码表有对应关系
计算机系统底层用于将bytes翻译成str的编码表

"""
# UTF-8 unicode transform[转换] format-8
"""
英文字符 8bit   1Bytes
其他字符 24bit  3Bytes
UTF-8不具备翻译功能
所有新文件应该存储为UTF-8格式
python3解释器指定的编码表

"""
"""
程序的运行,是把代码从硬盘读入内存,运行过程中产生的数据,都是存在于内存中的
键盘打字过程:输入人类字符 --> 翻译 --> 存储为二进制数字 --> 翻译  --> 输出人类字符

存储乱码后数据会丢失
文本文件,以什么格式存储的,就以什么格式读取
Python3解释器默认读取文件的编码方式为UTF-8
Python2解释器默认读取文件的编码方式为ASCII

翻译方式    存储格式           是否乱码
UTF-8      UTF-8 任何语言     不乱码
UTF-8      GBK 中文          乱码
GBK        UTF-8 中文        乱码

"""
# coding:utf-8
unicode_exa = '你好'
res = unicode_exa.encode('gbk')
# 返回GBK格式的字节数据
print(res, type(res))
# 与老平台对接时使用 老平台计算机只能识别GBK [基本用不到]
gbk_exa = res.decode('gbk')
# 将GBK格式的字节数据,以GBK格式进行解码,返回对应的字符串
print(gbk_exa)

# encode:将Unicode字符[内存中],编码成其他格式的二进制数
# decode:将其他格式的二进制数[硬盘中],解码成Unicode字符
# 具体是什么格式,根据程序员的指定

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值