9、字符编码

本文介绍了字符编码的发展历程,从ASCII到Unicode再到UTF-8,阐述了计算机如何读取和存储文件,以及字符的编码与解码过程。强调了编码格式在存储和读取时的一致性,同时提到了Python2和Python3在处理字符编码上的差异。
摘要由CSDN通过智能技术生成

字符编码

字符编码的渊源
1.  起初计算机只支持ASCII码的字符转换
2. 后来计算机兴起,为满足不同国家的需求,出现了GBK、shift-jis等字符编码表
3. 为了统一,后来出现了unicode编码格式,目前内存中使用的编码表就是unicode
4. 为了统一方便各国人的使用,出现了unicode的精简版万国字符编码表:utf-8

 构成计算机的三大硬件:cpu、内存、硬盘
 计算机读取文件的过程:
 	- 计算机把文件从硬盘加载到内存,
 	- 应用程序从内存中读取相应的数据
 计算机存储文件的过程:
 	- 应用程序将内容写到内存
 	-  计算机将内存中的数据写入到硬盘

字符的编解码过程

pycharm和mac终端默认的使用的字符编码是utf-8
window终端默认使用的字符编码是GBK

  • 编码过程(encode):
    1. 输入字符到pycharm编辑器,这个时候字符会编码成unicode(这个阶段不可人为控制)
    2. 字符串要落盘,会根据预先配置的字符编码表将unicode格式编码成相应的二进制落盘(可人为指定编码格式)
    一般编码是为了存入硬盘或者通过网络传输 ,会将字符串类型的数据转换为相应编码的bytes类型

  • 解码过程(decode):
    1. 通过指定的编码格式将磁盘上的相应格式的二进制读到内存解吗成unicode格式
    2. unicode格式的字符解码为相应的字符串(解码格式不可人为控制)

注意:

  1. 用什么编码格式存就用什么编码格式取
  2. 判断乱码是存数据发生的乱码还是取数据发生了乱码,不同情况处理方式不同
  3. python2诞生的时候还没出现unicode编码,所以python2中的字符如果要编码成为unicode格式,需要加上u。如:a=u"feilaifeng"
  4. python3默认就将字符编码成unicode存入内存中
  5. 声明读代码使用的编码格式,可以在代码第一行写上:# coding:utf-8
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据工匠大壮

请狠狠粗暴的爱我!!!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值