我是一个学习Python初学者,近期刚学完文件操做。特意分享
文章分为两部分,第一部分为文件读取类型以及读取的方式,第二部分为练习题python
文件读取的操做方式有如下几种:只读,只写,追加,读写,写读ide
只读 r
学习
f = open('test',mode='r',encoding='utf-8') # 打开文件,读取方式为`r`,编码为UTF-8 f1 = f.read() # 读取文件 print(f1) #打印文件 f.close() # 关闭文件
只读类型下,文件不能被修改编码
读写 r+
code
f = open('test',mode='rb',encoding='utf-8') # 读取方式变为`r+` file = f.read() f1 = f.read() f.close()
当读取方式为r+
时,文件能够被写入,可是打印出来的是写入前所读取的utf-8
二进制读 rb
代码略去,文件以二进制的模式读取。字符串
剩下的我将以表格形式统一展示,能够参照对比以上代码it
读取方式 | 补充 |
---|---|
r | 只读,不可被修改 |
r+ | 读写,光标在前,从第一个位置开始修改,打印出修改的字符数 |
rb | 以byte 方式读取 |
w | 只写,若写入的目标文件没有,则建立,有则清空再写入 |
wb | 转换为byte 类型写入 |
a | 打开文件,把光标移动到有文字的后面,再进行追加 |
ab | 以byet 类型加入 |
注
:r+
有两个表现,一个是读写
,还有一个是写读
。须要注意。另,w+
和a+
我没有写,是由于学习阶段用的相对来讲较少table
我先以表格形式展现,再进行详解class
读取方式 | 用于场合
读取方式 | 用于场合 |
---|---|
read() | 以字符读,可添加参数(I ),读前i 个字符 |
seek() | 调整光标位置 |
tell() | 调整光标位置,需放置于seek() 前 |
readline() | 一行一行的读 |
readlines() | 将每一行当成列表中元素读取,换行自带 \n |
truncate() | 截取一段读出来,从后往前读 |
例若有一个名为test
的文件,文件内容以下:
456926667
这是一个长为10个字符的字符串
f = open('test',mode='r',encoding='utf-8') # 打开文件,读取方式为`r`,编码为UTF-8 f1 = f.read(5) # 读取文件中前5个字符 print(f1) #打印文件 f.close() # 关闭文件
打印结果为
45692
f = open('test',mode='w',encoding='utf-8') # 打开文件,读取方式为`w`,编码为UTF-8 f1 = f.seek() print(f1) #打印第五个字符 f.close() # 关闭文件
打印结果为
2
剩下的我就不一一作演示,有须要能够本身试一试
f = open('test',mode='w',encoding='utf-8')
此文件读取方式,仅能读取一个文件,另外代码多
with open('test',mode='w',encoding='utf-8') as f: pass
此文件读取方式,能同时读取多个文件,且代码量相对来讲少
当须要同时操做两个或两个文件以上时,with open
方法会相对来讲简易许多
今天的文件笔记就先暂时分享到这,若是你也是刚刚一块儿学习的,能够添加个人群 456926667,一块儿交流互助学习。 若不能分享群,请审核者信息告知我。下篇文章还有练习