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相关方法/函数可读取该字符。

最新文章

  1. 【转】rollup、cub、grouping sets、grouping、grouping_id在报表中的应用
  2. 在Ubuntu上安装LAMP服务器
  3. Mustache 使用总结
  4. FMDBsqilte语句样式
  5. python之BIF函数在列表中的应用
  6. h5宣传页制作过程中遇到的问题
  7. js中的潜伏者之Arguments对象
  8. 谈谈Parser --王垠
  9. eclipse指定启动时的jdk(xjl456852原创)
  10. javascript 字符串方法传参
  11. Web Api初试
  12. CodeForces 707A Brain's Photos
  13. markdown使用小结
  14. LeetCode - 验证二叉搜索树
  15. Java面试题之基础篇概览
  16. Git——开启区分大小写
  17. NOIAC41 最短路(线性基)
  18. cf1110F 离线+树上操作+线段树区间更新
  19. 1-express学习
  20. idea14导入eclipse项目并部署运行完整步骤

热门文章

  1. 分布式系列六: WebService简介
  2. POJ 1410 Intersection (线段和矩形相交)
  3. Huber Loss
  4. 【原创】大叔案例分享(4)定位分析--见证scala的强大
  5. es2015 解构赋值
  6. mybatis mapper文件里的<set><trim>
  7. 错误: Error creating bean with name 'studentController': Unsatisfied dependency expressed through field 'studentServiceImpl';
  8. spring-boot-starter-thymeleaf 避坑指南
  9. HDU 5984.Pocky(2016 CCPC 青岛 C)
  10. Django 学习第十一天——中间键和上下文处理器