实验文件data.txt如下:

This file is data.txt
hello world!
My name is mark.

实验一、文件指针初始化

f = open('data.txt','r+')
print f.tell()
f.write('nice to meet you')
f.flush()
print f.tell()
print f.read()
f.close()相应输出:
//print f.tell()
0
//print f.tell()
16
//print f.read()
a.txt
hello world!
My name is mark.

以’r+‘模式打开文件,文件指针所指位置为0
f.write(‘nice to meet you’)会覆盖原文件内容,文件指针随着移动
print f.read()只会输出剩余内容

f = open(r'test2.txt','a+')
print f.tell()
f.write('nice to meet you')
f.flush()
print f.tell()
print f.read()
f.close()相应输出:
//print f.tell()
52
//print f.tell()
68
//print f.read()

以’a+’模式打开,文件指针所指位置为文件尾,此例为52
f.write(‘nice to meet you’)会在原文件内容尾添加,文件指针随着移动至68
因为随着write()函数,文件指针已经移到文件末尾,所以print f.read()没有输出

实验二、文件指针的移动

f = open(r'test2.txt','r+')
print f.tell()
f.seek(0,0)
print f.tell()
f.write('nice to meet you')
f.flush()
print f.tell()
f.seek(0,0)
print f.read()
f.close()相应输出:
//print f.tell()
0
//print f.tell()
0
//print f.tell()
16
//print f.read()
nice to meet youa.txt
hello world!
My name is mark.

以’r+‘模式打开文件,文件指针所指位置为0
f.seek(0,0),文件指针指向位置0
f.write(‘nice to meet you’)从位置0开始覆盖原文件内容,文件指针随着移动
‘nice to meet you’替换了原文件

f = open(r'test2.txt','a+')
print f.tell()
f.seek(0,0)
print f.tell()
f.write('nice to meet you')
f.flush()
print f.tell()
f.seek(0,0)
print f.read()
f.close()
相应输出:
//print f.tell()
52
//print f.tell()
0
//print f.tell()
68
//print f.read()
This file is data.txt
hello world!
My name is mark.
nice to meet you

以’a+’模式打开,文件指针所指位置为文件尾,此例为52
f.seek(0,0),文件指针指向位置0
f.write(‘nice to meet you’)从位置52开始添加,文件指针随着移动至68
新添加了’nice to meet you‘

Note:以’a+’模式打开文件,虽然以f.seek(0,0)将文件指针指向文件开头,但使用f.write()函数时,会重置文件指针,默认从文件末尾添加

Python文件指针相关推荐

  1. python 文件指针在文件末尾_python文件操作及seek偏移详解

    一.python文件操作中的编码 本次测试是基于python 2.7.12   OS:Ubuntu16.04  pycharm环境,以及win7下2.7.12; 首先说下汉字在文件中占用的字节数,这个 ...

  2. python文件指针放在文件的开头_033孤荷凌寒自学python之文件操作初识

    今天开始自学python的普通 文件操作部分的内容. 一.python的文件打开语句格式: file对象=open(文件路径及文件名[,打开模式默认为只读][,文件打开时缓存大小][encoding= ...

  3. python文件指针_在使用python写入文件之前,如何将文件指针放在上面一行?

    Scenario 有一个文件的末尾包含两个空行.当我在文件中追加一些内容时,它会在两个空行之后被写入(这是肯定的).在 但我只想要一个空行,然后去掉第二个空行.代替第二个空行,应写入附加数据.在#-- ...

  4. python 文件指针及文件覆盖

    1.文件纯净模式延伸 r+t:可读.可写 w+t:可写.可读with open('b.txt','w+t',encoding='utf-8') as f: print(f.readable()) pr ...

  5. python文件指针放在文件的开头_将文件指针倒带到上一个lin的开头

    我正在进行文本处理并使用"readline()"函数,如下所示:ifd = open(...) for line in ifd: while (condition) do some ...

  6. PYTHON自动化Day4-交换变量,字符串方法,拷贝,集合,文件,文件指针

    一.判断 # 非空即真.非0即真 # 不为空的话就是true,是空的话就是false # 只要不是0就是true,是0就是false# 布尔类型 # True False name = input(' ...

  7. python的文件基本操作和文件指针

    读写模式的基本操作 https://www.cnblogs.com/c-x-m/articles/7756498.html r,w,a r 只读模式 [默认模式,文件必须存在,不存在则抛出异常] w ...

  8. python ctypes 指针_Python Ctypes传递.h文件中定义的结构指针。

    我认为您可能缺少的是确切地知道您希望分配结构内存的位置.下面的c代码提供了一个为struct分配内存并返回指向它的指针的函数(new_struct()).#include #include #incl ...

  9. python初级8(buffering:缓冲区,encoding,文本操作,写入,文件指针,with关键字,调试 debug)

    buffering:缓冲区 buffering= -1 t和b都是io.DEFAULT_BUFFER_SIZE buffering=0 二进制模式 关闭缓冲区,文本模式不支持 buffering=1 ...

  10. 关于python文件读写小结

    读文件 打开一个文件用open()方法(open()返回一个文件对象,它是可迭代的): >>> f = open('test.txt', 'r') r表示是文本文件,rb是二进制文件 ...

最新文章

  1. 代码生成codegen
  2. php sqlsrv_query,sqlsrv_query
  3. uniapp 界面拖动,去掉半圆形阴影
  4. 路由器漏洞:***展示如何攻陷百万台
  5. hibernate_day03_一对多相关操作
  6. Homebrew是什么?怎么关闭自动更新?
  7. C#中一些日期的相关操作
  8. npm 缓存_npm缓存:无名英雄
  9. 大数据学习笔记53:Flume Sink Processors(Flume接收器处理器)
  10. Python花式编程案例集锦(5)
  11. 项目中会用到的开源项目列表
  12. linux js脚本无法响应,执行Linux shell脚本时出错
  13. 印尼Widya Robotics携手华为云,让建筑工地安全看得见
  14. supermicro服务器芯片,服务器厂商做的超频小板子:实在无语
  15. 创意信件风格论文答辩PPT模板
  16. 深度学习的可解释性!
  17. 【Python】解决CNN中训练权重参数不匹配size mismatch for fc.weight,size mismatch for fc.bias
  18. python中的self
  19. 如何利用XGen制作头发,发片-笔记
  20. 支付宝支付接口调用实现支付功能

热门文章

  1. wps垂直居中快捷键_word如何设置垂直居中 wpsword设置垂直居中
  2. Python模拟网页form表单提交
  3. 基于TI Davinci架构的多核/双核开发快速扫盲(以OMAP L138为例),dm8168多核开发参考以及达芬奇系列资料user guide整理...
  4. Windows照片查看器无法打开此图片怎么办
  5. Navicat Premium 15 的下载及其安装
  6. css栅格布局的四种大小xs,sm,md,lg
  7. 三相 AC-DC 变换电路(B 题)-- 2021 年全国大学生电子设计竞赛
  8. CDH集群清理磁盘空间
  9. 0投入,高收益,门槛低,自媒体副业推荐
  10. TI公司CC系列的各种芯片的区别 CC2430 CC1100