文件的相关函数

1.close 的意义

刷新缓冲区 flush

当文件关闭的时候自动刷新缓冲区
当整个程序运行结束的时候自动刷新缓冲区
当缓冲区写满了 会自动刷新缓冲区
手动刷新缓冲区

fp = open("ceshi6.txt",mode="a+",encoding="utf-8")
fp.write("add")
fp.flush()
while True:
	   pass

fp.close()

2.文件相关的函数

readable() 功能: 判断文件对象是否可读

writable() 功能: 判断文件对象是否可写

fp = open(“ceshi6.txt”,mode=“r+”,encoding=“utf-8”)
res1 = fp.readable()
res2 = fp.writable()
print(res1,res2)

readline() 功能: 读取一行文件内容

with open("ceshi6.txt" , mode="r+" ,encoding="utf-8") as fp:
	res = fp.readline(20000)
	
		如果字符个数 > 当前行总个数 ,按照当前行进行读取
		如果字符个数 < 当前行总个数 ,按照实际个数读取
	
	

	res = fp.readline()
	res = fp.readline()
	res = fp.readline()
	res = fp.readline()
	print(res)
	

改造 => 通过循环把文件当中所有内容读取出来

with open("ceshi6.txt" , mode="r+" ,encoding="utf-8") as fp:
	# 先读取一行
	res = fp.readline()
	# 判断读取的字符串是不是空,不为空就执行,反之不执行;
	while res:
		print(res)
		res = fp.readline()

readlines() 功能:将文件中的内容按照换行读取到列表当中

lst_new = []
with open("ceshi6.txt" , mode="r+" ,encoding="utf-8") as fp:
	lst = fp.readlines()
	
	for i in lst:
		res = i.strip()
		lst_new.append(res)
		
print(lst_new)

writelines() 功能:将内容是字符串的可迭代性数据写入文件中 参数:内容为字符串类型的可迭代数据

可迭代数据(容器类型数据 , range对象, 迭代器) 文件对象

文件对象也是可迭代性数据,在遍历时候,默认按照一行一行进行读取

for i in fp:
	print(i)
	
lst = ["抬头思故乡\n","疑是地上霜\n","举头望明月\n","低头鞋两双\n"]
with open("ceshi7.txt",mode="w+" ,encoding="utf-8") as fp:
	# 在列表中,对应的位置,插入想要的字符串
	lst.insert(1,"黄俊真聪明\n")
	fp.writelines(lst)

truncate() 功能: 把要截取的字符串提取出来,然后清空内容将提取的字符串重新写入文件中 (字节)

截取 -> 清空 -> 写入

with open("ceshi7.txt",mode="r+",encoding="utf-8") as fp:
	fp.truncate(6)

总结:

read(字符)
readline(字符)
seek(字节)
truncate(字节)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值