趣文网 > 作文大全

第34p 字符编码 文件操作的基础知识

2020-12-01 21:25:01
相关推荐

大家好,我是杨数Tos,这是《从零基础到大神》系列课程的第34篇文章,第二阶段的课程:Python基础知识:Python中的文件操作之字符编码。

学习本课程,建议先看一遍:【计算机基础知识】课程。

一、 字符编码介绍

我们打开一个文件并阅读文件的内容,对我们而言是只需点击一下文件就可以了;

但是,文件中包含有中文、英文、数字、标点符号、特殊字符等内容,计算机是如何把这些存储在硬盘中的二进制0和1翻译成为我们能看懂的中文、英文?

这就是字符编码的作用,把计算机中的0和1翻译成全世界不同语言、不同文字。

二、 字符编码发展史与分类(了解即可)

1、一家独大阶段

计算机是由美国人发明的,最早出现的字符编码ASCII也是由美国人发明的;ASCII编码只规定了英文字母数字和一些特殊字符与数字的对应关系;

最多只能用 8 位来表示(一个字节),即:2**8 = 256,所以,ASCII码最多只能表示 256 个符号

ASCII:一个Bytes代表一个字符(英文字符/键盘上的所有其他字符),1Bytes=8bit,8bit可以表示0-2**8-1种变化,即可以表示256个字符

ASCII最初只用了后七位,127个数字,已经完全能够代表键盘上所有的字符了(英文字符/键盘的所有其他字符),后来为了将拉丁文也编码进了ASCII表,将最高位也占用了。

2、各有标准阶段

最初的ASCII编码只能满足英文编译的需求,但是计算机不仅是英文国家使用,像中国、日本、德国、法国等各个国家也都使用计算机,这些国家为了方便自己的使用,都发明了各自的编码标准;

比如我们中国使用的是GBK编码,日本把日文编到Shift_JIS里,韩国把韩文编到Euc-kr里;

3、统一标准阶段

每个国家都有各自的编码标准,就不可避免地出现冲突,在读取多语言的混合文本中,显示出来就会有乱码,为了解决乱码问题,就产生了一种现在全世界通用的编码“utf-8”编码标准;

注:UTF-8(可变长,全称Unicode Transformation Format),对英文字符只用1Bytes表示,对中文字符用3Bytes,对其他生僻字用更多的Bytes去存储。

三、 Python中使用字符编码

1、使用字符编码

在Python文件中,我们可以在文件头写上一行 “# encoding:utf-8 ”即可,Python解释器在读取文件时,会预先读取第一行代码,根据首行代码判断使用什么编码读取文件内容。(也可以使用这种样式“# _*_ encoding:utf-8 _*_”)

2、如何保证不乱码?

很多时候,我们打开文件显示乱码,根本原因就是编写文件时使用的编码与打开文件时使用的编码不一致所导致;

所以,用什么编码标准存储文件,就使用什么编码读取文件,就不会发生乱码问题。

以上是本期内容,如果有表达不对的内容,欢迎您的留言、斧正,我们一起天天向上。

感谢您的阅读,您的关注点赞就是对我最大的支持,谢谢!

本文由杨数Tos原创,欢迎关注,带你一起长知识。

阅读剩余内容
网友评论
相关内容
小编推荐

大家都在看

我的老师初一作文600字 关于雨的作文600 英语习惯作文 最美心头一亮时作文600字 我最喜欢的歌作文400字 家乡的小河作文300字四年级 伤感的作文 你的样子作文 赞美人的作文 描写老师作文的开头 遇见作文 亲情的作文200字 高考作文素材书推荐 爱使我坚强作文 家庭新闻作文 五年级上册英语作文 我获奖了作文 瘦西湖的作文 我被爸爸打屁股作文 未来的汽车作文600字 写摔跤的作文 我的小学生活作文800字 职校初体验作文 公鸡作文400字 万州大瀑布作文 有关新年的作文300字 寿县古城墙作文 心儿怦怦跳作文200字 月考之后作文400字 以交流为话题的作文