文件I/O I 输入(input) O输出(Output)
文件操作步骤:1.打开文件 2.读写文件 3.关闭文件
-
写入文件的操作:
- 打开文件 open()
- 写入内容 write()
- 关闭文件 close()
-
读取文件的操作:
- 打开文件 open()
- 读取内容 read()
- 关闭文件 close()
-
文件操作相关函数
open() 打开文件
格式: open(文件的路径,打开的方式,[字符集])
Seek() 设置文件指针的位置
fp.seek(0) # 把文件指针设置到文件的开头位置
fp.seek(10) # 设置文件指针的位置
fp.seek(0,2) # 0,2是把文件指定设置在文件的末尾
write() 写入内容
格式:文件对象.write(字符串)
writelines() 写入容器类型数据
格式:文件对象.write(容器类型数据)
注意:容器类型数据中的元素也必须是可写入的字符串类型
read() 读取内容
格式:文件对象.read() 从当前指针位置读取到最后
格式:文件对象.read(读取的字节数) 可以读取指定长度的字符
readline() 读取一行
格式: 文件对象.readline() 一次读取一行
格式: 文件对象.readline(字节数) 一次读取一行中指定长度的字节
readlines() 读取所有行
格式: 文件对象.readlines() 读取所有行,每一行作为一个元素,返回了一个列表
格式:文件对象.readlines(6) 按照行进行读取,可以设置读取的字节数,设置的字节数不足一行按一行算
close() 关闭文件
格式:文件对象.close() 关闭打开的文件
-
文件操作的高级便捷写法
# 文件操作的 高级写法
'''
with open(文件路径,打开模式) as 变量:
变量.操作()
'''
with open('./1.txt','r+',encoding='utf-8') as fp:
res = fp.read()
print(res)
-
文件的路径:
文件路径 路径 url 统一资源定位符
相对路径: 就像给别人指路一样: 在某某大厦的对面。。。
针对文件的相对路径的表示,从当前目录开始计算
1.txt ==> 具体文件前没有任何表示时,默认为当前目录 和 ./1.txt 是一个位置
./1.txt ==> ./ 代表当前目录中的 1.txt
../1.txt ==> ../ 代表当前目录中的 上一级目录中的1.txt
绝对路径: 就像买东西写收货地址一样: 北京市海淀区中关村大街128号xxx小区,xxx号楼xx单元xx室
windows: c:/users/appdata/1.txt
Linux: /user/home/yc/1.txt
打开的模式:
一,基础模式: w r x a
w模式 write 写入模式
1-文件如果不存在,则创建这个文件
2-文件如果存在,则打开这个文件,并且清空文件内容
3-文件打开后,文件的指针在文件的最前面
r模式 read 读取模式
1-如果文件不存在,则报错
2-文件如果存在,则打开文件
3-文件指针在文件的最前面
x模式 xor 异或模式
1-文件不存在,则创建这个文件
2-文件已存在,则报错(防止覆盖)
3-文件的指针在文件的最前面
a模式. append 追加模式
1-文件不存在,则创建文件
2-文件如果存在,则打开文件 (和w模式的区别在于。a模式打开文件后不会清空)
3-文件指针在当前文件的最后
二,扩展模式:
b模式 bytes 二进制
+模式 plus 增强模式(可读可写)
三,文件操作模式的组合:
w,r,a,x
wb,rb,ab,xb,
w+,r+,a+,x+
wb+,rb+,ab+,xb+
网友评论