一.知识储备
cpu--控制和运算
内存--暂时存储cpu需要的数据
硬盘--永久保存数据
2.文本编辑器的原理存储原理
1,启动文本编辑器
2,在编辑器上输入内容---此时输入内容还在内存上
3,保存到硬盘
结论:在编写py程序的时候,没有语法的限制,编辑的结果和编写
一个普通的文本文件没有任何区别,只有把py程序交给python解释器解释
并执行的第三个阶段才有意义
3.python解释器执行python程序的原理
python3 test.py
第一阶段:先启动python解释器这个软件
第二阶段:把test.py文件的内容读入内存
第三阶段:解释执行,识别语法
4.文本编辑器读取原理
1.编辑器向操作系统发送请求
2.操作系统将数据从硬盘中取出,并在内存中加载
3.应用程序通过操作系统将内容打印出来 二.什么是字符编码
字符编码就是把人类的语言翻译为计算机能够理解的二进制的过程
翻译的过程遵循的原则--字符编码表(字符与二进制数一一对应的关系) 字符编码的发展:
ASCII 码:只能表示英文字符,一个英文字符占用1字节
GBK:中文定制的编码表,2个字节表示中文,1个字节表示英文
unicode:(内存中固定的编码)--2个字节表示一个字符
uft-8:unicode的升级版本,解决了unicode浪费内存空间的问题
1字节表示一个英文字符,3字节表示一个中文字符 三.保证不乱码的核心:
文件以什么编码存在,就必须以什么编码读取
强调:我们可以控制的只是存在硬盘上的编码 python3解释器:默认utf——8编码
python2解释器:默认ascii编码 文件头的作用:
#coding:utf-8 告诉解释器,使用我指定的字符编码 四.执行python程序第三个阶段发生的事
会识别python语法,定义的字符串类型涉及到字符编码的概念 例子:
x='上' #x=str('上')
python2:
字符串分为两种形式
x='上' #python2的str类型会按照文件头指定的编码来存'上' python3:
str:默认被存为unicode 五,转换 unicode和其他编码之间的转换   unicode---编码encode---》utf-8
  utf-8---解码decode---》unicode
     python3中str是以unicode编码形式存放的
  x='你好'
  x.encode('utf-8') ----> bytes类型
  bytes.decode('utf-8')------------->str(unicode)字符串类型
  
  3、bytes类型的用途:
  1、存放到文件中
  2、基于网络传输

python之路--day6--字符编码的更多相关文章

  1. 小白的Python之路 day1 字符编码

    字符编码 python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill) ASCII(American Standard Code for Information Interc ...

  2. Python之路 day2 字符编码及转换

    #!/usr/bin/env python # -*- coding:utf-8 -*- #Author:ersa import sys print("sys default encodin ...

  3. 小白的Python之路 day2 字符编码和转码

    字符编码和转码 详细文章: http://www.cnblogs.com/yuanchenqi/articles/5956943.html http://www.diveintopython3.net ...

  4. python全栈开发-Day6 字符编码

    python全栈开发-Day6 字符编码 一 .了解字符编码的知识储备 一 .计算机基础知识 二 .文本编辑器存取文件的原理(nodepad++,pycharm,word) #1.打开编辑器就打开了启 ...

  5. (转)Python之路,Day6 - 面向对象学习

    本节内容:   面向对象编程介绍 为什么要用面向对象进行开发? 面向对象的特性:封装.继承.多态 类.方法.     引子 你现在是一家游戏公司的开发人员,现在需要你开发一款叫做<人狗大战> ...

  6. python之旅:字符编码

    一 了解字符编码的知识储备 一 计算机基础知识 知识储备:cpu.内存.硬盘 二 文本编辑器存取文件的原理(nodepad++,pycharm,word) #1.打开编辑器就打开了启动了一个进程,是在 ...

  7. python基础——6(字符编码,文件操作)

    今日内容: 1.字符编码: 人识别的语言与机器识别的语言转化的媒介 *****     2.字符与字节: 字符占多少字节,字符串转化 ***     3.文件操作: 操作硬盘中的一块区域:读写操作  ...

  8. python文件操作:字符编码与文件处理

    一.字符编码 二.文件处理 一.字符编码 储备知识点: 1. 计算机系统分为三层: 应用程序 操作系统 计算机硬件 2. 运行python程序的三个步骤 1. 先启动python解释器 2. 再将py ...

  9. python学习之路_字符编码

    字符编码及python中的转码问题,这篇博客讲的比较清楚,python 之路,致那些年,我们依然没搞明白的编码

  10. python标准库之字符编码详解

    codesc官方地址:https://docs.python.org/2/library/codecs.html 相关帮助:http://www.cnblogs.com/huxi/archive/20 ...

随机推荐

  1. python 常用方法

    在python的类中,除了常规的一些自定义函数调用之外还有一些内置函数或方法,大多数情况下不会用到,但是为了更好的学习到python类的原理也需要对其有一定的了解,下面我们一起来看一下都具体包含了那些 ...

  2. mariadb 压缩包gz安装方式

    1.解压安装包tar -zxvf mariadb-5.5.56-linux-x86_64.tar.gz 2.cd support-filescp my-small.cnf /etc/my.cnf 2. ...

  3. java导出word

    public void dayinHw(HttpServletRequest request, HttpServletResponse response){ String id = request.g ...

  4. npm包管理器相关知识

    关于npm包安装命令的介绍,如下图:

  5. 基于socket实现的简单的聊天程序

    记得八年前第一次使用socket做的一个五子棋程序,需要序列化棋子对象,传递到对方的电脑上. 一个偶然的机会,第二次使用socket做点事情.先看聊天服务器端的实现: 服务器端要实现以下功能:     ...

  6. ssh框架搭建出现的异常: class com.my.entity.user not found while looking for property: id

    在处理用户注册的时候,user实体的bean创建不出来,原代码如下: <class name="com.my.entity.User" table="user&qu ...

  7. 那些年踩过的WebAPI的坑(一)

    ---恢复内容开始--- Visual Studio创建一个web项目, 在下一步的时候创建WebAPI项目的时候勾选web API之后,系统会生成一个web项目. 首先看一下webapi的路由配置, ...

  8. mac下redis安装、设置、启动停止

    下载安装 需要下载release版本,下载地址: http://download.redis.io/releases/ 我这里下载的是: http://download.redis.io/releas ...

  9. c++趣味之shared_ptr额外好处

    shared_ptr(sp)额外好处是什么?即使被转为基类,析构函数也可以正常执行. 已知两个类 class foo{}; class bar:foo{public:~bar(){}}; 先来看不用s ...

  10. 使用async和wait进行异步编程

    本文来源于博客园-钱智慧,转载请注明出处 代码示例 // 要让一个方法成为异步方法: // - async修饰符. // - 返回类型是 Task 或者 Task<T>. 具体来说,如果函 ...