2018-11-23 python学习第八天

‘‘‘

  1. 计算机系统分为三层:

    应用软件
    操作系统
    硬件

  2. 文本编辑器读一个文件的三个过程:
    1. 先启动文本编辑器
    2. 文件编辑器会将文件内容读入内存
    3. 将读入内存的内容显示到屏幕上

    Cpython解释器执行一个py文件的三个过程:

    1. 先启动python解释器
    2. python解释器会将py文件的内容当中普通的文本内容读入内存
    3. 开始解释执行刚刚读入内存的代码,识别python语法
  3. 字符编码
    字符编码指的是字符转换成/编码成数字
    编码的过程一定要遵循一个标准,该标准称之为字符编码表

    字符--------编码--------》数字
    字符《--------解码--------数字

‘‘‘

#1. ASCII表:只能识别英文字符,用8bit对应一个英文字符

1个英文字符====>1Bytes

#2. GBK表:可以识别中文字符、英文字符,用8bit对应一个英文字符,用16个bit对应一个中文字符

1个英文字符====>1Bytes

1个中文字符====>2Bytes

#3. unicode(内存中默认使用该编码):用2Bytes表示一个字符

1. 可以识别万国字符

2. 与各种字符编码的二进制数字都有对应关系

#4. utf-8全称Unicode Transformation Format:

1个英文字符====>1Bytes

1个中文字符====>3Bytes

结论:

#1、 编码与解码

字符--------编码--------》数字

字符《--------解码--------数字

unicode二进制========编码========》utf-8二进制

unicode二进制《=======解码=========utf-8二进制

#2. 内存中固定使用unicode编码,我们可以改变的是数据由内存刷到硬盘时采用的编码(应该采用utf-8)

unicode的特点:

1. 可以识别万国字符

2. 与各种字符编码的二进制数字都有对应关系

#3. 解决乱码问题的核心:

1. 字符当初以什么编码存的,就应该以什么编码去读

2. 保证运行python程序的前两个阶段不乱码的解决方案:添加文件头

在文件首行添加#coding:文件当初存的字符编码

#4. python解释器默认的编码

python3:默认utf-8

python2:默认ASCII

#5.

python3的字符串类型在内存中存成unicode格式的二进制

#

原文地址:http://blog.51cto.com/13520724/2321253

时间: 2024-10-15 16:46:57

2018-11-23 python学习第八天的相关文章

Python学习第八天——学校(类的继承)

1 #coding=utf-8 2 #Version:python 3.6.0 3 #Tools:Pycharm 2017.3.2 4 _date_ = '2018/4/25/025 21:02' 5 6 class school(object): 7 def __init__(self,name,addr): 8 self.name = name 9 self.addr = addr 10 self.students = [] 11 self.teachers = [] 12 self.sta

python学习第八天

解析库之bs4的基本使用方法 ''' pip install beautifulsoup4#安装bs4 pip install lxml#安装lxml ''' html_doc = """ <html><head><title>The Dormouse's story</title></head> <body> <p class="sister"><b>$37&

6月11日 python学习总结 框架理论

Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. 半成品自定义web框架 import socket sk = socket.socket() sk.bind(("127.0.0.1", 80)) sk.listen() while True: conn, addr = sk.accept() data = conn.recv(8096) conn.send(b"

python学习第八天二进制和字符编码有关联

计算机所能识别只有0,1这两种状态,但是我们人类用字母,汉字,还有其他语言,那么怎么和计算机进行沟通呢,python编程语言最早unicode,现在统一用utf8,UTF8通用的编码语言,所有语言都包含了 1,国际通用的编码 unicode ,utf8 2,国内编码 gb2312 GBK 3,台湾编码 Big5 文章转载(玖乐网络 http://www.96net.com.cn/) 原文地址:https://www.cnblogs.com/96net/p/9492715.html

python学习第八天,,文件操作,切片相当于浅copy

切片的补充: 切片相当于浅copy: a = [1,2,3,4,5] b = a[:] print(id(a),id(b),id(a[0]),id(a[0])) #2432299195592 2432299195528 #1795645664 1795645664 文件的操作:(分为三步) 1.打开文件.产生文件句柄 f 2.对文件句柄进行操作 3.关闭文件句柄 f = open(r'a.txt',encoding='utf-8',mode='r') f.read() content = f.c

[2018/11/14]关于学习的思考

今天早上的操作系统课, 头盔哥(操作老师, 因为有车但是还是经常的骑电瓶车来给我们上课, 而且头盔看起来极其的结实, 故我个人称他为头盔哥)又开始给我们灌鸡汤了, 不过今天的鸡汤味道好极了. 让我对大学本科的教育有更加深入的理解. 头盔哥说, 他这门课交给我们的知识, 如果我们不从事计算机是不会用到的, 但是, 通过这门课的学习, 对学习的方法的锻炼才是真正的收获. 学习方法才是大学教育最重要. 接着, 头盔哥又教育我们持之以恒的道理, 嗯嗯, 简直是人生导师. 课堂笔记的鸡汤部分, 专业知识的

[2018/11/14] Java学习

在网上下载了一个用Java实现的数据结构的视频, 看了前三个视频, 感觉收获很大, 今天花了接近三小时在Java的数据结构上. 课程的目录如下: 第01讲:数组第02讲:简单排序第03讲:栈和队列第04讲:链表第05讲:双端链表和双向链表第06讲:递归的应用第07讲:递归的高级应用第08讲:希尔排序第09讲:快速排序第10讲:二叉树的基本概念第11讲:二叉树的基本操作第12讲:遍历二叉树第13讲:删除二叉树节点第14讲:红黑树第15讲:哈希表第16讲:开放地址法第17讲:链地址法第18讲:图的基

18 11 23 正则学习

---恢复内容开始--- 1  小程序    一     邮箱输入判断  系统 import re def main(): email = input("请输入你的邮箱") """下面的意思为 ^ 开头 从a到z A到Z 0到9 自动匹配 4到20位数字 由于 . 是什么都可算进去 所以加上 / 来解除他的功能 最后用 $ 来当作结尾""" ret = re.match(r"^([a-zA-Z0-9]){4,20}@

python学习第八天:文件操作

文件处理 1.什么是文件处理 ①.文件是操作系统为用户或应用程序提供的一个读写硬盘的虚拟单位 ②.文件操作的核心就是读写 ③.我们只需要对文件进行读写操作,就是对操作系统发起请求,然后由操作系统或应用程序对文件的读写操作转换成具体的硬盘指令. 2.为什么要有文件? 因为内存无法永久保存数据,但凡我们想要永久保存数据,都需要保存到硬盘,而操作文件就可以完成对硬件的操作 3.如何使用文件 把硬盘中的数据读到内存中 f = open(r'E:\a.txt','r','utf-8')