文件和异常
with open("text.txt") as p: 读取文件目录下的text.txt文件并返回文件对象存储在p变量
text=p.read() 读取p变量的内容 存储到text变量
print(text)
open函数("文件名",模式,缓冲区大小,encoding="编码"):打开文件,返回文件对象 后两个为可选 open还能指定encoding="编码"
r:打开现有文件,只读 rb:用二进制模式打开文件,只读 r+:打开现有文件,可读可写 rb+:用二进制模式打开文件可读可写
w:如果文件存在清空内容,如果文件不存在创建文件 用于写入 wb w+ wb+
a:如果文件存在追加内容,如果文件不存在创建文件 用于写入 ab a+ ab+
r读取模式 b二进制 +可读可写
w空文件写入模式 b二进制 +可读可写
a追加写入模式 b二进制 +可读可写
close()方法 文件对象.close():关闭文件
read(读取字节大小)方法 文件对象.read():读取,并返回内容 size为可选 默认全读取 read()到文件末尾会返回一个换行符,print中使用对象名.rstrip()去掉换行 strip去空格
readline()方法 文件对象.readline():每次读取一行内容并返回 每次调用readline()文件指针都会往下1行
readlines()方法 文件对象.readlines() 返回每行内容组成的列表
write(内容)方法 文件对象.write(内容):写入内容到指定的文件对象 write()不会添加换行符
tell()方法 文件对象.tell():返回文件指针的位置
seek(偏移量,模式)方法 文件对象.seek():移动文件指针
0:文件头 1:当前位置 2:文件尾
注:read() readline() readines()是读取文件内容开始位置:指针位置及其后面的字符
write():每输出一个字符文件指针就会偏移一位
注:如果使用open()文件使用结束需要close()关闭文件 但是如果产生错误close()将不会执行,可能会造成数据丢失,因此需要用到with结构 with末尾自动关闭文件
异常捕获:
try:
执行的测试语句
except 错误类型:
遇到错误执行的语句
else:
无错误执行的语句
try:
5/0
except ZeroDivisionError:
print("除数不能为0") 结果:除数不能为0 不会用编译器的报错信息转而用自己设置的报错信息
简单的单词统计:
try:
with open("wx.txt")as p:
txt=p.read
except FileNotFoundError:
print("未能找到文件") 结果:当未在目录上找到指定文件,不会显示编译器错误信息,转而打印自己设置的提示信息对用户更友好
else:
x=txt.split()
print(len(x))