Python入门(六)——文件操作(a+ w+ r+ 光标位置 读写相互独立)

本文详细介绍了Python中文件操作的各种模式,包括r、w、a、r+、w+、a+,以及它们对光标位置的影响。同时,还讲解了.read()、.write()、.seek()等文件操作方法,强调了文件处理过程中的注意事项和实用技巧。
摘要由CSDN通过智能技术生成


能调用方法的内容一定是对象,文件本身也是对象

1. open()

open() 方法作为文件处理的开头,返回操作文件的句柄
一般用法:

f = open('./test.txt', 'r', encoding= 'utf-8')
commad...
f.close()

或者:

with open('./test.txt', 'r', encoding= 'utf-8') as f:
	f.read()
command #接下来再处理其他代码即可

一般比较推荐使用第二种做法,不用注意最后是否关闭文件
但是第一种用法一定要注意关闭文件,Python内部自带的关闭文件的机制不一定靠谱

2、文件操作方式:r、w、a、r+、w+、a+

2.1 r 读模式,不可写

with open('./test.txt', 'r', encoding= 'utf-8') as f:
	f.read()
	f.write('alex') #报错

2.2 w 写模式,执行打开命令清空文件,不可读

with open('./test.txt', 'w', encoding= 'utf-8') as f:
	f.read() #报错
	f.write('alex')

2.3 a 追加模式,不清空文件,文档末尾追加,可写不可读

with open('./test.txt', 'a', encoding= 'utf-8') as f:
	f.read() #报错
	f.write('alex')

2.4 w+ 写读,光标规则恶心

规则:(读、写操作光标独立)

  • 打开文件,光标停留在文档开头,清空内容
  • 执行写,光标一定会移动到末尾,进行写入,并停留
  • 执行读,光标会回位到之前读操作停留的位置进行读取,读完之后光标返回之前写的位置
  • seek()方法可设定的位置,但读操作起作用;写的话一定会执行上面的写规则

f = open('小重山', 'w+', encoding='utf-8')
print('起始光标: ', f.tell())
print('内容1: ', f.readline().strip())
print('光标1: ', f.tell())
f.write('1 zhaore\n2 zhaore\n')
f.write('3 zhaore\n4 zhaor\n')
f.write('5 zhaore\n6 zhaor\n')
print('【写光标】: ', f.tell())

print(('光标重置: '+str(f.seek(0))).center(30, '-'))
print('内容2: ', f.readline().strip())
print(
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值