目录
- 计算机基础之编程
- 计算机组成
- 操作系统
- 编程语言分类
- 网络瓶颈效应
- python程序执行的两种方式
- 变量
- 变量打印的三种形式
- 常量
- python变量内存管理
- 花式赋值
- 布尔类型
- 解压缩
- python与用户交互
- 格式化输出的三种方式
- 基本运算符
- 控制流程之if判断
- 控制流程之while循环
- 控制流程之for循环
- 数字类型内置方法
- 字符串内置方法
- 列表内置方法
- 元组内置方法
- 字典内置方法
- 集合内置方法
- 散列表
- 深浅拷贝
- 字符编码
- python2与python3字符编码的区别
- 文件处理的基本使用
- 打开文件的三种模式
- 打开文件的两种方法
- with管理文件上下文
- 文件的高级应用
- 文件的修改
- 函数的定义
- 函数的三种定义方式
- 函数的调用
- 函数的返回值
- 函数的参数
- 可变长参数
- 函数对象
- 函数嵌套
- 名称空间与作用域
计算机基础之编程
什么是编程语言
人与计算机交流的介质
什么是编程
写一堆问价
为什么要编程
解放劳动力
计算机组成
CPU
控制器
控制硬件
运算器
算数运算和逻辑运算
存储器
主存
- 优点:速度快
- 缺点:容量小,断电即消失
外存
- 优点:容量大,可以永久保存
- 缺点:速度慢
I/O设备
输入设备
输入信息,如鼠标 / 键盘
输出设备
输出信息,如显示屏 / 打印机
多核CPU
同一时刻处理多件事情
32位与64位
计算机一次性读取的二进制位数
机械硬盘工作原理
机械手臂
读取数据
磁道
存储数据
平均寻道时间
5ms
平均延迟时间
4.15ms
平均寻找数据时间
9.15ms
固态硬盘
操作系统
什么是文件
文件是操作系统虚拟出来的,用来存储信息
操作系统的作用
操作系统把对硬件的复杂操作简单化
计算机三大组成
- 硬件
- 应用程序
- 操作系统
操作系统的启动
- 开机,临时操作系统启动
- 临时操作系统启动真正的操作系统
- 操作系统启动
应用程序启动
- 双击qq(给操作系统指令)
- 操作系统给cpu指令
- CPU给内存指令
- 内存给硬盘指令,读取qq数据进入内存
- 启动qq
编程语言分类
机器语言
- 优点:执行效率高
- 缺点:开发效率低
汇编语言
- 优点:开发效率高
- 缺点:执行效率低
高级语言
编译型语言
- 优点:执行效率高
- 缺点:开发效率低
解释型语言
- 优点:开发效率高
- 缺点:执行效率低
网络瓶颈效应
网络延迟时间远大于应用程序执行的时间
python程序执行的两种方式
交互式
命令行式
变量
什么是变量
描述世间万物的状态
变量的组成
- 变量名
- 赋值符号
- 变量值
变量名的命名规范
- 要有意义
- 字母 / 数字 / 下划线组成,不能以数字开头
- 不能以关键字命名
变量打印的三种形式
- 打印变量值
- 打印id
- 打印type
常量
python变量内存管理
引用计数
变量值的引用次数
垃圾回收机制
变量值的引用计数为零,触发垃圾回收机制
小整数池
[-5 ,256]
花式赋值
链式赋值
交叉赋值
布尔类型
所有数据类型自带布尔值,除了0/ None / 空 / False自带布尔值为False,其他都为True
解压缩
python与用户交互
input,接收的永远是字符串
格式化输出的三种方式
- f-string
- %占位符
- format
基本运算符
- 算数运算符
- 逻辑运算符
- 赋值运算符
- 成员运算符
- 身份运算符
- 比较运算符
- 位运算符
- 运算符优先级
控制流程之if判断
单分支结构
双分支结构
多分支结构
if嵌套
控制流程之while循环
while+break
while+continue
while+else
中间变量控制while退出
while嵌套
控制流程之for循环
for+break
for+continue
for+else
for循环嵌套
数字类型内置方法
整型
浮点型
使用方法
+ - * / % // **
字符串内置方法
优先掌握
- 索引取值
- 切片
- for循环
- in / not in
- len
- strip
- split
需要掌握
- lstrip / rstrip
- rsplit
- startswith / endswith
- replace
- join
- lower / upper
- isdigit
了解
- find / rfind / index / rindex / count
- center / ljust / rjust / zfill
- capitalize / title / swapcase
- expandtab
- is系列
列表内置方法
- 索引取值 / 索引修改值
- 切片
- for循环
- len
- in / not in
- append
- del
- sort
- reverse
- remove
- pop
- copy
- clear
- index
- insert
- count
- extend
元组内置方法
字典内置方法
- 按key取值 / 按key修改值
- for
- in / not in
- len
- keys / values / items
- get
- update
- fromkeys
- setdefault
集合内置方法
- 交集 &
- 并集 |
- 差集 -
- 补集 ^
- add
- remove / discard
- pop
散列表
深浅拷贝
- lt2是lt1拷贝对象,lt1内任何数据类型变化,lt2都随着改变
- lt2是lt1浅拷贝对象,lt1内可变数据类型变化,lt2改变;lt1内不可变数据类型变化,lt2不变
- lt2是lt1深拷贝对象,lt1内任何数据类型变化,lt2都不变
字符编码
python2与python3字符编码的区别
文件处理的基本使用
- open
- write / read
- flush
- close
打开文件的三种模式
- r
- w
- a
打开文件的两种方法
- t
- b
with管理文件上下文
文件的高级应用
三种新的打开文件的方式
- r+
- w+
- a+
光标的移动
-
seek
-
tell
-
truncate
-
read
文件的修改
函数的定义
函数的三种定义方式
空函数
有参函数
无参函数
函数的调用
函数的返回值
- return可以返回值,默认返回None
- return可以终止函数
- return可以返回多个值,默认用元组储存
函数的参数
形参
接收实参,具有描述意义
位置形参
从左到右依次接收位置实参
默认形参
- 具有默认值
- 默认形参必须在位置形参之后
实参
传值给形参,是具体的值
位置实参
从左到右依次给位置形参传值
关键字实参
- 按照形参名传值
- 关键字实参必须放在位置实参的后面
可变长参数
*
*形参
用元组接收多余的位置实参
*实参
打散列表,然后以位置实参传给位置形参
**
**形参
用字典接收多余的关键字实参
**实参
打散字典,然后以关键字实参传给位置形参
*形参**形参
接收所有多余的参数
函数对象
引用
作为函数参数
作为函数返回值
作为容器类元素
函数嵌套
名称空间与作用域
内置名称空间
放内置方法
全局名称空间
除了内置和局部就是全局
局部名称空间
函数内部定义的变量 / 函数
执行顺序
内置 -- > 全局 -- > 局部
搜索顺序
从当前位置开始 局部 --> 全局 -- > 内置 -->报错
全局作用域
全局作用域的x和局部作用域的x没有任何关系,可变数类型例外
局部作用域
局部作用域1的x和局部作用域2的x没有任何关系
global
局部的可以修改全局的
nonlocal
局部的可以修改外层局部的