### csv文件的操作
### 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') 可读的二进制文件对象
_enumerate()函数和推到式生产列表
可以把索引和内容放同一个元组中
### 文本文件的读取
1.read(【size】)
从文件读取size个字符,并返回。没有就读整个文件。读到文件末尾,会返回空字符
2.readline()
读取一行内容作为返回。读到文件末尾,会返回空字符
3.readlines()
文件文本中,每一行作为一个字符串存入列表,返回列表
### with语句(上下文管理器)
write(),writelines()写入
writelines()写的是列表
close()关闭文件流
## 编码介绍
## 文件操作(io技术)
### 文本文件和二进制文件
1.(文本文件)默认使用unicode字符集,即可以用记事本程序打开的。
2.(二进制文件)无法用记事本打开的,必须用专用软件解码的
### 创建文件对象open()
1.r 读read模式
2.w 写write模式,如果文件存在则删除原文件内容,没有就增加
3.a 追加模式
4.b 二进制模式
5.+ 读,写模式
### 文件写入
步骤:1.创建文件对象
2.写入数据
3.关闭文件对象
## pycharm开发环境的调试
进行调试的核心是设置断点。程序执行到断点会暂时挂起,停止执行。就像看视频按下停止。可以详细观察每一处细节
1.断点
2.进入调试模式
右键的Debug
3.调试操作
step over
step into
step out
run to cursor执行到光标处
### 自定义异常类
自定义异常通常会继承Exception,或其子类,命名一般以Error,Exception为后缀
### trackback模块的使用(traceback回溯)
### 常见异常的解决
注:return语句,一般不放在异常句子中,一般放最后
1.SyntaxError:语法错误
2.NameError:尝试访问一个没有申明的变量
3.ZeroDivisionError:除数为0 错误(零除错误)
4.ValueError:数值错误
5.TypeError:类型错误
6.AttributeError:访问对象的不存在的属性
7.IndexError:索引越界异常
8.KeyError:字典的关键字不存在
### try ... except...finally结构
无论是否异常都执行finally内容
### try except else结构
无异常,则执行else
### try...多个exception结构
try:
语句块
excep Exception1:
处理异常
excep Exception2:
处理异常
...
except BaseException:
处理更多可能遗漏的异常语句
### try...一个except结构
try:
被监控的可能引发异常的语句
except BaseException[as e]:
异常处理语句块
## 异常的本质
### 导引问题
### with上下文管理器
finally可以释放资源,通过with可以更方便地实现
语法结构
with context_expr[as var]:
语句块
打开资源后无论是否异常都会关闭资源
with open("d:/a.txt","r")as f: content=f.readline() print(content) print("程序执行结束")