一、先介绍下file、seek、truncate的基本用法:

seek(offset,where):  where=0从起始位置移动,1从当前位置移动,2从结束位置移动。当有换行时,会被换行截断。seek()无返回值,故值为None。

tell():  文件的当前位置,即tell是获得文件指针位置,受seek、readline、read、readlines影响,不受truncate影响

truncate(n):  从文件的首行首字符开始截断,截断文件为n个字符;无n表示从当前位置起截断;截断之后n后面的所有字符被删除。其中win下的换行代表2个字符大小。

readline(n):读入若干行,n表示读入的最长字节数。其中读取的开始位置为tell()+1。当n为空时,默认只读当前行的内容

readlines读入所有行内容

read读入所有行内容

二、以下以1个例子说明以上各个函数的作用

fso = open("f:\\a.txt",'w+')    '以w+方式,并非a方式打开文件,故文件原内容被清空
      print fso.tell()    '文件原内容被清空,故此时tell()=0

fso.write("abcde\n")  '写入文件abcde\n,因为换行\n占两个字符,故共写入7个字符
      print fso.tell()  '此时tell()=7

fso.write("fghwm")  '又写入文件fghwm,故此时文件共写入7+5 =142个字符
      print fso.tell()  '此时tell()=12

fso.seek(1, 0)  '从起始位置即文件首行首字符开始移动1个字符
      print fso.tell()   ‘此时tell() =1

print  fso.readline()  '读取当前行,即文件的第1行,但是从第二个字符(tell()+1)开始读,结果为:bcde。

'若换成for读取整个文件或read读取整个文件则结为bcdefghwm     
      print fso.tell()   ‘因为readline此时tell() =7,

fso.truncate(8)  '从写入后文件的首行首字符开始阶段,截断为8个字符,即abcde\nf,即文件的内容为:abcde\nf

print fso.tell()   ‘tell() 依旧为7,并为受truncate(8)影响,但是此时文件内容为abcde\nf

print  fso.readline()  ‘从tell()+1=8开始读取,读取当前行内容:f

fso.close()

谈谈python文件管理中的file、seek、truncate相关推荐

  1. python强制用什么作为语句缩进符号_python从入门到放弃 第二天 谈谈python代码中的冒号和缩进...

    如同格子衬衫一样规整的源代码书写层次,是一个优秀的码农必备的编程习惯.python的作者无意就是这样一个人. python是用冒号(:)和强制缩进作为代码层次来划分代码组的.这是一个很小的知识点,但是 ...

  2. Python 并发编程(三):谈谈 Python 线程中的“锁机制”

    1. 什么是锁? 在开发中,锁 可以理解为通行证. 当你对一段逻辑代码加锁时,意味着在同一时间有且仅能有一个线程在执行这段代码. 在 Python 中的锁可以分为两种: 互斥锁 可重入锁 2. 互斥锁 ...

  3. Python中的File(文件)操作

    Python中的File(文件)操作 针对磁盘中的文件的读写.文件I/O I 输入(input) O输出(Output) 文件操作步骤:1.打开文件 2.读写文件 3.关闭文件 写入文件的操作:(把大 ...

  4. 详解Python中的File(文件)操作

    目录 Python中的File(文件)操作 写入文件的操作: 读取文件的操作: 一.文件操作相关函数 1. open() 打开文件 2. seek() 设置文件指针的位置 3. write() 写入内 ...

  5. 在Python中操作文件之truncate()方法的使用教程

    在Python中操作文件之truncate()方法的使用教程 这篇文章主要介绍了在Python中操作文件之truncate()方法的使用教程,是Python入门学习中的基础知识,需要的朋友可以参考下 ...

  6. python文件处理seek()方法的参数是_Python 文件(File) seek() 方法

    例如: 将当前文件位置更改为4,然后返回其余行:f = open("demofile.txt", "r") f.seek(4) print(f.readline ...

  7. python中seek(10、1)_Python中index()和seek()的用法(详解)

    1.index() 一般用处是在序列中检索参数并返回第一次出现的索引,没找到就会报错,比如: >>> t=tuple('Allen') >>> t ('A', 'l ...

  8. python中index什么意思_Python中index()和seek()的用法(详解)

    1.index() 一般用处是在序列中检索参数并返回第一次出现的索引,没找到就会报错,比如: >>> t=tuple('Allen') >>> t ('A', 'l ...

  9. python 中的File

    File 编码格式介绍 文件的读写原理 文件的读写操作 文件对象常用的方法 with 语句(上下文管理器) 目录操作 编码格式的介绍 常见的字符编码格式 1.python的解释器使用的是Unicode ...

最新文章

  1. 移动端接口:版本的兼容
  2. 饥荒海难机器人怎么用_饥荒开发商又一款神作,难到吐血的生存游戏!
  3. 论文浅尝 | 动态词嵌入
  4. UVALive 6909 Kevin's Problem 数学排列组合
  5. .net与java之争
  6. web mis系统构建
  7. day8--pandas
  8. java动态bean_Java如何操作对象(bean)进行动态排序?
  9. 博弈论 | 三姬分金与囚徒困境
  10. Excel单元格区域快速导出为PDF
  11. Codeforces 1180B
  12. 家谱范例模板:一本完整的家谱,一定需要这几部分内容
  13. [JZOJ3337] 【NOI2013模拟】wyl8899的TLE
  14. 普通网站的建设和维护费用大概是多少?
  15. 地理坐标xy表示什么_地理坐标怎么写 书写格式及方法
  16. 今天准备出发去珠海横琴,去长隆海洋乐园看鲨鱼宝宝了
  17. 0 嵌入式-ARM简介
  18. [Andoid][踩坑]CTS 11_r3开始出现的testBootClassPathAndSystemServerClasspath_nonDuplicateClasses FAIL问题分析
  19. iMessage 群发
  20. JDBC之MySQL的URL

热门文章

  1. 怎么在keil官网上下载芯片固件包(*.pack)
  2. 软件测试系列之单元测试 (转载)
  3. Python实现离线字典+听写单词(三):语音输出单词
  4. Java私塾跟我学系列——JAVA篇 第四章Java类和对象
  5. ps处理图片合并以及图片矩形角转圆角
  6. 四柱子汉诺塔—递归—递推
  7. CentOS安装达梦数据库
  8. 字节转换比特位c语言,C语言实现双字节在数组中按比特位移动
  9. 《NJUPT》网络信息安全_期末PPT整理笔记
  10. linux防火墙设置禁用网络,linux如何禁用防火墙