seek方法补充
seek 默认模式是从文件的开始移动光标,一共有0.1.2三种模式
f=open('seek.txt','r',encoding='utf-8')
print(f.tell())
f.seek(10,0) #0代表的就是从文件开头移动光标 这是默认的
print(f.tell())
f.seek(3,0)
print(f.tell())
f=open('seek.txt','rb') #如果使用seek的其他模式有必须要使用b的模式
print(f.tell())
f.seek(10,1) #1代表相对位置,相对于上一次的光标这一次怎么移动
print(f.tell())
f.seek(3,1)
print(f.tell())
f=open('seek.txt','rb') #有什么用?
print(f.tell())
f.seek(-5,2) #2代表从文件末尾开始移动光标
print(f.read()) #读是读光标后面的内容
print(f.tell())
f=open('日志文件','rb')
for i in f.readlines(): #用readlines就是把所有的内容给一下都调到内存,等于用渔网弄上来所有的鱼
print(i)
#循环文件的推荐方式
for i in f: #用f就是一条条的拿鱼上来,但是这里是从正方向一条条的拿,而我们要从后开始拿,所以倒过来拿
print(i)
f=open('日志文件','rb') #这一部分代码的意思就是你有很多条日志,但是你要得到最新的一条日志,也就是你文件中最后一行日志该怎么操作
for i in f:
offs=-10
while True:
f.seek(offs,2) #从最后开始读取
data=f.readlines()
if len(data) > 1: #只要光标的位置是在最后一行之上便可得到最后一行 如果没有则要继续增大offs值
print('文件的最后一行是%s' %(data[-1].decode('utf-8')))
break
offs*=2
seek方法补充的更多相关文章
- Python 文件 seek() 方法
概述 Python 文件 seek() 方法用于移动文件读取指针到指定位置. 语法 seek() 方法语法如下: fileObject.seek(offset[,whence]) 参数 offset ...
- python中读取文件的f.seek()方法
用于二进制文件中F.seek方法 作用: 设置读写位置 F.seek(偏移量, whence=相对位置) 偏移量 大于0的数代表向文件末尾方向移动的字节数 小于0的数代表向文件头方向中移动的字节数 相 ...
- python 魔法方法补充(__setattr__,__getattr__,__getattribute__)
python 魔法方法补充 1 getattribute (print(ob.name) -- obj.func())当访问对象的属性或者是方法的时候触发 class F(object): def _ ...
- file.seek()方法引出的文本文件和二进制文件问题
问题的起因 菜鸟教程上有一段关于file.seek()方法的讲解,先简短描述一下seek()方法: seek(offset, whence)方法用于移动文件读取指针到指定位置 参数offset--开始 ...
- python基础知识五 各类型数据方法补充,转换,分类,编码+坑中菜
3.9各类型数据方法补充,转换,分类,编码,坑中菜 3.9.1数据类型方法补充 1.str:不可变 补充方法 s1.capitalize():首字母大写 s1 = "alex" s ...
- 文件操作中file.seek()方法
摘要: file.seek()可以将文件游标移动到文件的任意位置,本文具体的file.seek()文件游标移动操作方法. file.seek()方法标准格式是:seek(offset,whence=0 ...
- Python File seek() 方法
概述 seek() 方法用于移动文件读取指针到指定位置.高佣联盟 www.cgewang.com 语法 seek() 方法语法如下: fileObject.seek(offset[, whence]) ...
- 像画笔一样慢慢画出Path的三种方法(补充第四种)
今天大家在群里大家非常热闹的讨论像画笔一样慢慢画出Path的这种效果该如何实现. 北京-LGL 博客号@ligl007发起了这个话题.然后各路高手踊跃发表意见.最后雷叔 上海-雷蒙 博客号@雷蒙之星 ...
- python面向对象魔术方法补充
一.描述符 在 面向对象 编程中 定义一个(没有定义方法)类:class person , 在这个类里面,有name,age, heigth, weight,等等属性, 这个类就可以看作一个对 per ...
随机推荐
- Extended Traffic
题目链接 题意:有n个路口,m条通路,如果经过一条路则会得到(终点 - 起点)^3的权值,求从1点到其他点的最小权值,如果权值小于3或无法到达输出'?'. 题解:因为权值可能为负,所以用SPFA来解题 ...
- HDU_1005:Number Sequence
Problem Description A number sequence is defined as follows: f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1 ...
- python字符串、元组常用操作
常用字符串操作函数: #Author:CGQ name="I \tam ChenGuoQiang" print(name.capitalize())#首字母大写,其他都小写 pri ...
- Javascript 用来验证电话号码的正则
Javascript 用来验证电话号码的正则 在学习 Javascript 时学习到的. function telephoneCheck(str) { // return /^(1\s?)?(\d{3 ...
- Python基础:19类和实例的内建函数
1:issubclass() issubclass()布尔函数,判断一个类是否是另一个类的子类或子孙类.它有如下语法:issubclass(sub,sup) 这个函数也允许“不严格”的子类,意味着,一 ...
- zip解决杨辉三角问题
杨辉三角原型: / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ 实现: a = [1] while True: print(a) ...
- Mac OSX原生读写NTFS功能开启方法
macOX系统内建的NTFS支持默认只能读不能写 原生读写NTFS,需要自行终端命令手动开启 1. 插上磁盘 此时Mac桌面应该会显示出插入的磁盘,但是当你想把文件拖入磁盘的时候,发现是不能拖进去的, ...
- Getting started with the basics of programming exercises_1
1.编写一个将输入复制到输出的程序,并将其中连续的多个空格用一个空格代替 使用if 结构: #include<stdio.h> #define NONBLANK 'a'; // repal ...
- APICloud修改最低操作系统版本要求
在APICloud中的云编译选项中: 点击高级设置,就可以修改对应的操作系统版本要求:
- oracle避免在索引列上使用IS NULL和IS NOT NULL
避免在索引中使用任何可以为空的列,ORACLE将无法使用该索引 .对于单列索引,如果列包含空值,索引中将不存在此记录. 对于复合索引,如果每个列都为空,索引中同样不存在此记录. 如果至少有一个列不为空 ...