1.同一运算符:is ,is not
区别:is判断的是地址
==判断的是值
注:在-5,256之间数值会缓存,所以id是相同的,不同解释器不同
1.同一运算符:is ,is not
区别:is判断的是地址
==判断的是值
注:在-5,256之间数值会缓存,所以id是相同的,不同解释器不同
1.布尔值本质是1和0
2.布尔值的比较运算符:等于,不等于,大于,小于,大于等于,小于等于
返回:True和False
3.逻辑运算符:或or,与and,非not
### sys.path和模块搜索路径
按下面的顺序从上往下搜索
1.内置模块
2.当前目录
3.程序的主目录
4.Pythonpath目录(如果已经设置Pythonpath环境变量)
5.标准链接库目录
6.第三方库目录
7..pth文件的内容(如果存在的话)
8.sys.path.append()临时添加的目录
### 包的本质和init文件——批量导入
__init__.py的三个核心作用:
1.作为包的标识,不能删除
2.用来实现模糊导入
3.导入包实质是执行__init__.py文件,可以在__init__.py文件中做这个包的初始化,以及需要统一执行代码,以及批量导入
### 用*导入包
import*会把子模块全部导入,生产中不建议使用
### 包内引用
from..importmodule_a #..表示上级目录
from.import module_A2 #.表示同级目录
##包的内容
### 导入包操作
导入和使用时要写上包名
#import my01.aa.module.A #from my01.aa.module.A import fun_aa
### __import__()函数的动态导入
import importlib用于动态导入
## 模块的导入
### import 语句
import 模块名
import 模块1,模块2...
import 模块名 as 模块别名
## 模块
### 模块化程序思维
### 递归的目录树结构
## 递归
### 递归算法原理(阶乘计算)
#### ziopfile模块 压缩和解压缩
shutil模块(拷贝和压缩)
#### os模块 使用walk遍历
os.path模块——常用方法
#### os模块——文件和目录操作
常用操作文件的方法:
1.remove(path)删除指定文件
2..rename(src,dest)重命名
3.stat(path)返回文件所有属性
4.listdir(path) 返回path目录下的文件和目录列表
关于目录操作的相关方法:
1.madir(path) 创建目录
2.makedirs(path1/path2..)创建多级目录
3.rmdir(path)删除目录
4.removedirs(path1/path2...)删除多级目录
5.getcwd()返回当前工作目录:current work dir
6.chdir(path) 把path设为当前目录
7.walk()遍历目录树
8.sep当前操作系统所使用的路径分隔符
### os和os.path模块
os模块可以帮助我们直接对操作系统操作
#### os调用操作系统文件和命令
### csv文件的操作
使用pickle序列化
序列化:是把对象转化成“串行化”数据形式,存到硬盘或通过网络传到其他地方。
反序列是指相反的过程,将读取的“串行化数据”转化成对象。
### 文件对象的常用属性和方法
属性:说明
flush 把缓冲区的内容写入文件,但不关闭文件
seek(offset【,whence】)把文件指针移动到新的位置,offset表示相对于whence的多少个字节的偏移量:
offset:
off为正往结束方向移动,set为负往开始方向移动
whence不同值的含义:
0:从文件头开始计算(默认)
1:从当前位置开始计算
2:从文件尾开始计算
### 二进制的读取和写入
f=open(r"d:\a.txt",'wb') 可写的,重写模式的二进制文件对象
f=open(r"d:\a.txt",'ab') 可写的,追加模式的二进制文件对象
f=open(r"d:\a.txt",'rb') 可读的二进制文件对象