python3 文件读写操作中的文件指针seek()使用
2024-08-20 13:53:44
python中可以使用seek()移动文件指针到指定位置,然后读/写。通常配合 r+ 、w+、a+ 模式,在此三种模式下,seek指针移动只能从头开始移动,即seek(x,0) 。
模式 | 默认 | 写方式 | 与seek()配合---写 | 与seek()配合---读 |
r+ | 文件指针在文件头部,即seek(0) | 覆盖 |
f = open('test.txt','r+',encoding='utf-8') f.seek(3,0) f.write('aaa') #移动文件指针到指定位置,再写 |
f = open('test.txt','r+',encoding='utf-8') f.seek(3,0) f.read() #移动文件指针到指定位置,读取后面的内容 |
w+ | 文件指针在文件头部,即seek(0) | 清除 | f = open('test.txt','w+',encoding='utf-8')
f.seek(3,0) f.write('aaa') #清除文件内容,移动文件指针到指定位置,再写 |
f = open('test.txt','w+',encoding='utf-8')
f.write('aaa') f.seek(3,0) f.read()#清除文件内容写入,移动文件指针到指定位置,读取后面内容 |
a+ | 文件指针在文件尾部,即seek(0,2) | 追加 |
f = open('test.txt','a+',encoding='utf-8') f.seek(3,0) f.write('aaa') #直接在文件末尾写入,seek移动指针不起作用 |
同 r+ |
(1)seek(offset[,whence]): (2)offset--偏移量,可以是负值,代表从后向前移动; (3)whence--偏移相对位置,分别有:os.SEEK_SET(相对文件起始位置,也可用“0”表示);os.SEEK_CUR(相对文件当前位置,也可用“1”表示);os.SEEK_END(相对文件结尾位置,也可用“2”表示)。 seek(x,0):表示指针从开头位置移动到x位置 seek(x,1):表示指针从当前位置向后移动x个位置 seek(-x,2):表示指针从文件结尾向前移动x个位置 例:file.seek(-1,2),文件指针从文件末尾向前移动一个字符,配合read相关方法/函数可读取该字符。 |
最新文章
- 【转】rollup、cub、grouping sets、grouping、grouping_id在报表中的应用
- 在Ubuntu上安装LAMP服务器
- Mustache 使用总结
- FMDBsqilte语句样式
- python之BIF函数在列表中的应用
- h5宣传页制作过程中遇到的问题
- js中的潜伏者之Arguments对象
- 谈谈Parser --王垠
- eclipse指定启动时的jdk(xjl456852原创)
- javascript 字符串方法传参
- Web Api初试
- CodeForces 707A Brain's Photos
- markdown使用小结
- LeetCode - 验证二叉搜索树
- Java面试题之基础篇概览
- Git——开启区分大小写
- NOIAC41 最短路(线性基)
- cf1110F 离线+树上操作+线段树区间更新
- 1-express学习
- idea14导入eclipse项目并部署运行完整步骤
热门文章
- 分布式系列六: WebService简介
- POJ 1410 Intersection (线段和矩形相交)
- Huber Loss
- 【原创】大叔案例分享(4)定位分析--见证scala的强大
- es2015 解构赋值
- mybatis mapper文件里的<;set>;<;trim>;
- 错误: Error creating bean with name &#39;studentController&#39;: Unsatisfied dependency expressed through field &#39;studentServiceImpl&#39;;
- spring-boot-starter-thymeleaf 避坑指南
- HDU 5984.Pocky(2016 CCPC 青岛 C)
- Django 学习第十一天——中间键和上下文处理器