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方法补充的更多相关文章

  1. Python 文件 seek() 方法

    概述 Python 文件 seek() 方法用于移动文件读取指针到指定位置. 语法 seek() 方法语法如下: fileObject.seek(offset[,whence]) 参数 offset  ...

  2. python中读取文件的f.seek()方法

    用于二进制文件中F.seek方法 作用: 设置读写位置 F.seek(偏移量, whence=相对位置) 偏移量 大于0的数代表向文件末尾方向移动的字节数 小于0的数代表向文件头方向中移动的字节数 相 ...

  3. python 魔法方法补充(__setattr__,__getattr__,__getattribute__)

    python 魔法方法补充 1 getattribute (print(ob.name) -- obj.func())当访问对象的属性或者是方法的时候触发 class F(object): def _ ...

  4. file.seek()方法引出的文本文件和二进制文件问题

    问题的起因 菜鸟教程上有一段关于file.seek()方法的讲解,先简短描述一下seek()方法: seek(offset, whence)方法用于移动文件读取指针到指定位置 参数offset--开始 ...

  5. python基础知识五 各类型数据方法补充,转换,分类,编码+坑中菜

    3.9各类型数据方法补充,转换,分类,编码,坑中菜 3.9.1数据类型方法补充 1.str:不可变 补充方法 s1.capitalize():首字母大写 s1 = "alex" s ...

  6. 文件操作中file.seek()方法

    摘要: file.seek()可以将文件游标移动到文件的任意位置,本文具体的file.seek()文件游标移动操作方法. file.seek()方法标准格式是:seek(offset,whence=0 ...

  7. Python File seek() 方法

    概述 seek() 方法用于移动文件读取指针到指定位置.高佣联盟 www.cgewang.com 语法 seek() 方法语法如下: fileObject.seek(offset[, whence]) ...

  8. 像画笔一样慢慢画出Path的三种方法(补充第四种)

    今天大家在群里大家非常热闹的讨论像画笔一样慢慢画出Path的这种效果该如何实现. 北京-LGL 博客号@ligl007发起了这个话题.然后各路高手踊跃发表意见.最后雷叔 上海-雷蒙 博客号@雷蒙之星 ...

  9. python面向对象魔术方法补充

    一.描述符 在 面向对象 编程中 定义一个(没有定义方法)类:class person , 在这个类里面,有name,age, heigth, weight,等等属性, 这个类就可以看作一个对 per ...

随机推荐

  1. Java SDUT-2562_相似三角形

    相似三角形 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 给出两个三角形的三条边,判断是否相似. Input 多组数据 ...

  2. 原生js复习1.0

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  3. 【NS2】cygwin+NS2.29安装之道 (转载)

    最近接了一个需要进行网络模拟的项目.对与网络模拟一窍不通的本人算是一个挑战.于是乎开始整日上网搜索相关的资料,没想到这个世界的资源真是丰富多彩.最后发现了一个网络模拟的流行软件NS2,在经过多次尝试后 ...

  4. rank(),允许并列名次、复制名次自动空缺,结果如12245558……

    将score按ID分组排名:rank() over(partition by id order by score desc) 将score不分组排名:rank() over(order by scor ...

  5. linux扫盲之CPU模式

    相信研究linux的大大都知道linux有实模式.保护模式.虚拟模式三种. 不多说,拷贝黏贴!  80386开始,cpu有三种工作方式:实模式,保护模式和虚拟8086模式.只有在刚刚启动的时候是rea ...

  6. Android Animation动画实战(一): 从布局动画引入ListView滑动时,每一Item项的显示动画

    前言: 之前,我已经写了两篇博文,给大家介绍了Android的基础动画是如何实现的,如果还不清楚的,可以点击查看:Android Animation动画详解(一): 补间动画 及 Android An ...

  7. 2019-8-31-dotnet-将文件删除到回收站

    title author date CreateTime categories dotnet 将文件删除到回收站 lindexi 2019-08-31 16:55:58 +0800 2019-03-2 ...

  8. [ Laravel 5.1 文档 ] 服务 —— 帮助函数

    http://laravelacademy.org/post/205.html 1.简介 Laravel自带了一系列PHP帮助函数,很多被框架自身使用,然而,如果你觉得方便的话也可以在应用中随心所欲的 ...

  9. poj 3181 Dollar Dayz(完全背包)

    Dollar Dayz Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 5419   Accepted: 2054 Descr ...

  10. origin/HEAD -> origin/master 这个分支是干嘛的啊

    ➜ sso git:(master) ✗ git branch -r origin/4.0 origin/HEAD -> origin/master origin/master origin/H ...