python文件处理指针的移动
控制文件指针移动
- with open('a.txt',mode='rt',encoding='utf-8')as f:
- res=f.read(4)
- print(res)
强调:只有t模式下read(n)中的n表示的是字符个数,其他都是以字节为单位。
- with open('a.txt',mode='rb')as f:
- res=f.read(3)
- print(res.decode('utf-8'))
f.seek():指针移动 以字节为单位
三种模式:
0(默认):参照文件开头
1 :参照指针当前位置
2 :参照文件末尾
I 0模式:参照文件开头
只有0模式既可在t下用也可在b模式下用。1.2只能在b模式下用
- with open('a.txt',mode='rt',encoding='utf-8') as f:
- f.seek(3, 0)
- print(f.tell()) #显示指针位置
- print(f.read())
- #参照文件开头指针位置向后移动3个字节
II 1模式:参照指针当前位置
- with open('a.txt',mode='rb')as f:
- f.read(3) #先读三个字节,指针移动到3
- f.seek(3, 1)#1以指针当前位置再移动3位
- print(f.read().decode('utf-8'))
III 2模式:参照文件末尾
- with open('a.txt',mode='rb')as f:
- f.seek(-5,2) #参照文件末尾,指针移动到-5
- print(f.tell())
- print(f.read().decode('utf-8'))
小练习:
写一个程序监测文件中新增内容:
- with open('access.log',mode='at',encoding='uft-8')as f:
- f.write('时间 内容 登陆名\n') #先写一个程序:该程序就是被监测程序
- import time #导入时间模块,刷新时间
- with open('access.log',mode='rb')as f:
- f.seek(0, 2) #将指针移到文件末尾
- while True: #循环一行行读取文件
- line = f.readline()
- if len(line) == 0:#判断文件长度是否为0,为0表示文件未写入
- time.sleep(1)
- else:#如果有文件写入则会打印
- print(line.decode('utf-8'), end='')
python文件处理指针的移动的更多相关文章
- Python文件指针与Python函数
文件内指针移动:f.seek() 强调:只有t模式下read(n),n代表字符的个数,除此以外都是以字节为单位. """ 文件内容:哈哈哈哈 呵呵呵呵 "&qu ...
- python文件操作:文件指针移动、修改
一.文件指针移动 二.修改 一.文件指针移动 #大前提:文件内指针的移动是Bytes为单位的,唯独t模式下的read读取内容个数是以字符为单位 # f.read(3) # with open('a ...
- python文件I/O(转)
Python 文件I/O 本章只讲述所有基本的的I/O函数,更多函数请参考Python标准文档. 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个用逗号隔开的表达式.此函数把你 ...
- python 文件操作总结
Python 文件I/O 本章只讲述所有基本的的I/O函数,更多函数请参考Python标准文档. 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个用逗号隔开的表达式.此函数把你 ...
- Python基础篇【第2篇】: Python文件操作
Python文件操作 在Python中一个文件,就是一个操作对象,通过不同属性即可对文件进行各种操作.Python中提供了许多的内置函数和方法能够对文件进行基本操作. Python对文件的操作概括来说 ...
- Python文件操作详解
Python内置了一个open()方法,用于对本地文件进行读写操作.这个功能简单.实用,属于必须掌握的基础知识. 使用open方法操作文件可以分三步走,一是打开文件,二是操作文件,三是关闭文件.下面分 ...
- python文件和元组
python文件操作 相较于java,Python里的文件操作简单了很多 python 获取当前文件所在的文件夹: os.path.dirname(__file__) 写了一个工具类,用来在当前文件夹 ...
- (转)python文件操作 seek(),tell()
seek():移动文件读取指针到指定位置 tell():返回文件读取指针的位置 seek()的三种模式: (1)f.seek(p,0) 移动当文件第p个字节处,绝对位置 (2)f.seek(p,1) ...
- Python 文件I/O (转)
Python 文件I/O 本章只讲述所有基本的的I/O函数,更多函数请参考Python标准文档. 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个用逗号隔开的表达式.此函数把你 ...
随机推荐
- 如何进行CodeReview
一.代码规范的要点 代码规范主要分为风格规范与设计规范两大类: 1.代码风格规范 主要是文字上的规定,看似表面文章,实际上非常重要. 具体有如下几个方面: (1)缩进 (2)行宽 (3)断行/空白行 ...
- [UE4]判断UI动画播放方向
使用一个变量来记录播放的方向.
- 不同版本Eclipse对JDK版本要求
原文:https://blog.csdn.net/kevin_pso/article/details/54971739 1.Eclipse 4.6 (Neon)---需要JDK1.8版本,官网解释如下 ...
- 云计算的三种服务模式:IaaS,PaaS和SaaS
云服务”现在已经快成了一个家喻户晓的词了.如果你不知道PaaS, IaaS 和SaaS的区别,那么也没啥,因为很多人确实不知道. “云”其实是互联网的一个隐喻,“云计算”其实就是使用互联网来接入存储或 ...
- window.open打开新窗口报错ie 位指明错误,原因是window没有加引号!
function JsMod(htmlurl,tmpWidth,tmpHeight){ htmlurl=getRandomUrl(htmlurl); var newwin = window.open( ...
- [SQL]SQL Prompt5的工具栏按钮介绍
这是SQL Prompt5的工具栏按钮 Refresh Suggestions 刷新提示(数据库更改表结构后,需要刷新一下) Format SQL 格式化代码(Pro版本才能启用,可定制,所有前边带红 ...
- SqlServer存储过程输出参数
if exists(select 1 from sysobjects where name='P_PreOrderInfo') drop Procedure P_PreOrderInfo go Cre ...
- 04 bash程序的基本特性
我们知道Linux系统有两种操作方式,一种为GUI的图形界面化管理方式,其中图形程序常见的有Gnome.KDE.xfce:另一种管理方式就是就是GLI的命令行管理方式,而命令行的管理方式就是通过she ...
- HDFS高级功能
HDFS的六大高级特性: 安全模式 安全模式是HDFS所处的一种特殊状态,在这种状态下,文件系统只接受读数据请求,而不接受删除.修改等变更请求.在NameNode主节点启动时,HDFS首先进入安全模式 ...
- SOA, EDA, 和 ESB
SOA----面向服务架构,实际上强调的是软件的一种架构,一种支撑软件运行的相对稳定的结构,表面含义如此,其实SOA是一种通过服务整合来解决系统集成的一种思想.不是具体的技术,本质上是一种策略.思想. ...