1.回顾:

软件→操作系统→硬件

2.文本编辑器:

启动:硬盘→内存→运行(cpu)

读文件:硬盘→内存→CPU读

存文件:保存到硬盘中

3.python解释器

启动:硬盘→内存→运行(cpu)

读文件:硬盘→内存→CPU读

(这两阶段与文本编辑器相同,但第三阶段就不同了,关系到语法等问题)

解释执行:这个阶段就要在内存中开辟新的空间

4.字符编码:顾名思义就是编码字符的

①字符编码的作用:把人能识别的字符通过一种标准翻译成计算能识别的二进制,翻译过程的标准就是字符编码表

②不同的字符编码表

ASCII

用8个位表示一个字节bytes,共可表示2**8=256种

GBK

用2个bytes表示1个字符,共2**16种

Unicode(万国码)

用2个bytes表示1个字符(但是在保存英文字符的时候就浪费空间)

UTF-8(万国码)

对英文存1个bytes,中文存3个bytes

5.计算机内存中用Unicode(速度快),硬盘中用UTF-8(占用空间小,传输稳定)

6.保存文件过程:内存Unicode   →   encode   →   硬盘UTF-8/或其他字符编码

读取文件过程:硬盘UTF-8/或其他字符编码  →  decode   →   内存Unicode

7.以上总结:

①存文件的时候用的什么编码(encode)取的时候就要用什么编码取(decode)

②python3解释器默认的字符编码是UTF-8,可以更改:   #coding:gbk或其他

③python2解释器默认的字符编码是ASCII,可以更改:   #coding:uft-8或其他

8.python解释器第三阶段才用到字符串,执行中遇到字符串就会开辟新的内存空间存起来。

在python3中字符串都是unicode格式的二进制存放在内存中,而在python2中字符串都是已经encode后的结果,即bytes。

9.Unicode   →   encode   →   bytes

bytes       →   decode   →   Unicode

10.python3中有两种形式的字符串:

①.Unicode(解释器自动控制)

②.bytes(Unicode→encode→bytes)(人为控制)

11.python2的字符串有两种:

①.   str = bytes(Unicode→encode→bytes)(解释器自动控制)

②.   u'  字符串  '       (相当于python3中的Unicode)

12.为什么要有bytes:

计算机最基本的传输信号就是二进制,就相当说最基本的传输信号就是bytes,所以数据要传输就要用bytes。

python-day10--字符编码的更多相关文章

  1. Python基础-字符编码与转码

    ***了解计算机的底层原理*** Python全栈开发之Python基础-字符编码与转码 需知: 1.在python2默认编码是ASCII, python3里默认是utf-8 2.unicode 分为 ...

  2. Python的字符编码

    Python的字符编码 1. Python字符编码简介 1. 1  ASCII Python解释器在加载.py文件的代码时,会对内容进行编码,一般默认为ASCII码.ASCII(American St ...

  3. Python常用字符编码(转)

    Python常用字符编码   字符编码的常用种类介绍 第一种:ASCII码 ASCII(American Standard Code for Information Interchange,美国信息交 ...

  4. Python常见字符编码间的转换

    主要内容:     1.Unicode 和 UTF-8的爱恨纠葛     2.字符在硬盘上的存储     3.编码的转换     4.验证编码是否转换正确     5.Python bytes类型 前 ...

  5. python 3字符编码

    python 3字符编码 官方链接:http://legacy.python.org/dev/peps/pep-0263/ 在Python2中默认是ascii编码,Python3是utf-8编码 在p ...

  6. Python 的字符编码

    配置: Python 2.7 + Sublime Text 2 + OS X 10.10 本文意在理清各种编码的关系并以此解决 Python 中的编码问题. 1 编码基本概念 只有先了解字符表.编码字 ...

  7. 转:Python常见字符编码及其之间的转换

    参考:Python常见字符编码 + Python常见字符编码间的转换 一.Python常见字符编码 字符编码的常用种类介绍 第一种:ASCII码 ASCII(American Standard Cod ...

  8. Python之字符编码(Day10)

    1. python解释器执行py文件的原理 ,例如python test.py    第一阶段:python解释器启动,此时就相当于启动了一个文本编辑器 第二阶段:python解释器相当于文本编辑器, ...

  9. Python遇到字符编码出问题的一个相对万能的办法

    在使用Python做爬虫的过程中,经常遇到字符编码出问题的情况. UnicodeEncodeError: 'ascii' codec can't encode character u'\u6211' ...

  10. Python:字符编码详解

    相关文章 Python中文编码问题:为何在控制台下输出中文会乱码及其原理 1. 字符编码简介 1.1. ASCII ASCII(American Standard Code for Informati ...

随机推荐

  1. Js基础知识4-函数的三种创建、四种调用(及关于new function()的解释)

    在js中,函数本身属于对象的一种,因此可以定义.赋值,作为对象的属性或者成为其他函数的参数.函数名只是函数这个对象类的引用. 函数定义 // 函数的三种创建方法(定义方式) function one( ...

  2. x86,x64,Any CPU区别

    https://blog.csdn.net/zuguangboy/article/details/51509670 1,即主程序(编译出来是exe文件的)是x86平台下编译的,而它所依赖的一个项目(或 ...

  3. div居中布局

    利用margin属性可以实现div居中布局,把div的左边距和右边距设置为auto即可,代码如下 <!DOCTYPE html> <html> <head> < ...

  4. 计算概论(A)/基础编程练习1(8题)/5:鸡兔同笼

    #include<stdio.h> int main() { // 鸡兔同笼中脚的总数:a < 32768 int a; scanf("%d", &a); ...

  5. INNODB引擎概述

    INNODB存储引擎的历史概述: INNODB存储引擎是OLTP应用中核心表的首选存储引擎. INNODB存储引擎包含在所有mysql数据库的二进制发行版本中.早期其版本随着mysql数据库的更新而更 ...

  6. bzoj1651 / P2859 [USACO06FEB]摊位预订Stall Reservations

    P2859 [USACO06FEB]摊位预订Stall Reservations 维护一个按右端点从小到大的优先队列 蓝后把数据按左端点从小到大排序,顺序枚举. 每次把比右端点比枚举线段左端点小的数据 ...

  7. Eclipse中的工程引入jar包后没有整合到一个文件夹而是全部在根目录下显示

    Eclipse中的工程引入jar包后没有整合到一个文件夹而是全部在根目录下显示 解决方案: 1,在Eclipse中,点击window-->Preferences-->Java-->B ...

  8. 20145305 《网络对抗》MSF基础应用

    实践过程及结果截图 主动攻击ms08_067 Kali的IP:10.43.46.93 靶机的IP:10.43.49.28 MS08_067远程漏洞攻击实践:Shell 攻击成功的结果 在kali上执行 ...

  9. 20145307陈俊达《网络对抗》Exp5 MSF基础应用

    20145307陈俊达<网络对抗>Exp5 MSF基础应用 基础问题回答 用自己的话解释什么是exploit,payload,encode? exploit就相当于是载具,各式各样的漏洞在 ...

  10. 20145335郝昊《网络攻防》Exp 4 利用nmap扫描

    20145335郝昊<网络攻防>Exp 4 利用nmap扫描 实验原理 使用msf辅助模块,nmap来扫描发现局域网中的主机ip 实验步骤 首先使用命令创建一个msf所需的数据库 serv ...