• Python之字符编码(一)


    一、了解字符编码的知识储备?

    1、计算机基础知识?

      计算机中所有的软件文件(包括:操作系统)都存储在硬盘,启动计算机,计算机需要把系统文件都去到内存中。

      

    2、文本编辑器存取文件的原理(nodepad++、pycharm、word)

      打开编辑器就启动了一个进程,是在内存中的,所以,用编辑器编写的内容也都是存放在内存中,断电后数据丢失。

      想要永久保存,需要把内存中的数据刷到硬盘上。

      编写一个py文件(没有执行),跟编写TXT文件一样,没有任何区别。都只是一堆字符而已。

    3、python解释器解释py文件的原理,例如:python test.py

      第一阶段:python解释器启动,此时就相当于启动了一个文本编辑器。

      第二阶段:python解释器相当于文本编辑器,去打开test.py文件,从硬盘上将test.py文件的内容读取大内存中(pyhon的解释性只关心文件内容,不关心文件后缀名)

      第三阶段:python解释器解释执行刚刚加载到内存中的test.py的代码(在执行阶段,才会识别python语法,执行文件内代码,执行到name="张三",才会开辟内存空间存放字符窜"张三")

      总结python解释器与文本编辑器的区别:

      相同点:python是解释器是解释执行文件内容的,因而python解释器具备读取py文件的功能,这一点与文本编辑器一样。

      不同点:文本编辑器将文件内容读取内存后,是为了显示或者编辑文本内容,根本不会去理会执行python语法,而python解释器将文件内容读入内存后,是为了执行,会识别python语法。

    二、什么是字符编码?

      计算机要想工作必须通电,即用‘电’驱使计算机干活,也就是说‘电’的特性决定了计算机的特性。电的特性即高低电平(人类从逻辑上将二进制数1对应高电平,二进制数0对应低电平),关于磁盘的磁特性也是同样的道理。结论:计算机只认识数字。

      很明显,我们平时在使用计算机时,用的都是人类能读懂的字符(用高级语言编程的结果也无非是在文件内写了一堆字符),如何能让计算机读懂人类的字符?

      必须经过一个过程:

      字符--------(翻译过程)------->数字

      这个过程实际就是一个字符如何对应一个特定数字的标准,这个标准称之为字符编码。

      以下两个场景下涉及到字符编码的问题:

      1. 一个python文件中的内容是由一堆字符组成的,存取均涉及到字符编码问题(python文件并未执行,前两个阶段均属于该范畴)

      2. python中的数据类型字符串是由一串字符组成的(python文件执行时,即第三个阶段)

  • 相关阅读:
    Template(模板)模式
    Android活动(Activity)创建及生命周期
    Android--SharedPreferences数据存储方案
    Adapter适配器模式--图解设计模式
    准时制生产(Just in Time,JIT)
    术语
    制造资源计划(Manufacturing Resource Planning,Mrp II)
    Angualr6表单提交验证并跳转
    Android PDA扫描枪广播接搜条码并使用
    Java统计代码行数
  • 原文地址:https://www.cnblogs.com/MouseCat/p/7518781.html
Copyright © 2020-2023  润新知