python中seek怎么用
概述
seek() 方法用于移动文件读取指针到指定位置。
语法
seek() 方法语法如下:
fileObject.seek(offset[, whence])
参数
offset -- 开始的偏移量,也就是代表需要移动偏移的字节数
whence:可选,默认值为 0。给offset参数一个定义,表示要从哪个位置开始偏移;0代表从文件开头开始算起,1代表从当前位置开始算起,2代表从文件末尾算起。
file.seek(off, whence=0):
从文件中移动off个操作标记(文件指针),正往结束方向移动,负往开始方向移动。
如果设定了whence参数,就以whence设定的起始位为准,0代表从头开始,1代表当前位置,2代表文件最末尾位置。
#!/usr/bin/python # -*- coding: utf-8 -*- # 文件定位测试 # 打开一个文件 fo = open("foo.txt", "r+") allstr = fo.read() print "全部内容:\n", allstr print "当前指针位置: ", fo.tell() print 35*"=" # 指针调到开始 position = fo.seek(0, 0) str = fo.read(3) print "读取前三个字符串是:", str # 查找当前位置 position = fo.tell() print "当前指针位置: ", position print 35*"=" # 把指针再次重新定位到当前位置开始 position = fo.seek(2, 1) print "上一个指针移动2个,现在位置: ", fo.tell() a = fo.read(2) print "从指针位置读取2个字符为: ", a print "当前指针位置: ", fo.tell() print 35*"=" # 把指针再次重新定位到从末尾开始 position = fo.seek(-3, 2) print "从末尾倒数3个,指针位置为: ", fo.tell() a = fo.read() print "从指针位置读取字符串: ", a print "当前指针位置: ", fo.tell() # 关闭打开的文件 fo.close
foo.txt内容为:weiruoyu
输出结果为:
全部内容: weiruoyu 当前指针位置: 8 =================================== 读取前三个字符串是: wei 当前指针位置: 3 =================================== 上一个指针移动2个,现在位置: 5 从指针位置读取2个字符为: oy 当前指针位置: 7 =================================== 从末尾倒数3个,指针位置为: 5 从指针位置读取字符串: oyu 当前指针位置: 8
python学习网,大量的免费,欢迎在线学习!
骅佗教育还为您提供以下相关内容希望对您有帮助:
seek_set是干什么的?怎么用?
1. 打开文件:在使用seek_set之前,首先要打开文件。2. 设置偏移量:seek_set函数通常需要两个参数,第一个是偏移量,第二个是起始位置。偏移量表示从指定位置移动的字节数。3. 调用seek_set函数:根据需求调用seek_set,将文件指针移动到指定位置。三、seek_set的使用场景 在文件处理中,当我们知道...
python中 file.seek( ) 的用法?
seek那个函数不返回值,你print淡然显示为None了 file.seek(0)是重新定位在文件的第0位及开始位置 file = open("test.txt","rw") #注意这行的变动 file.seek(3) #定位到第3个 for i in file:print i 现在到了最后一位了 for i in file:print i 不会显示任何结果 file.seek(0) #...
Python文件读取中:f.seek(0)和f.seek(0,0)有什么区别?
file.seek()方法标准格式是:seek(offset,whence=0)offset:开始的偏移量,也就是代表需要移动偏移的字节数whence:给offset参数一个定义,表示要从哪个位置开始偏移;0代表从文件开头开始算起,1代表从当前位置开始算起,2代表从文件末尾算起。默认为0 whence 的默认参数是0。whence 还有两种情况 是1,...
python对文本文件的读有哪些方法,写有哪些方法?
file_name.seek(0) # 调整写的指针到文件的开始位置for line infile:读取写入的数据,这时候会读出一行写入的数据。file.close()
如何用python最快的获取大文件的最后几行
2)推荐方法:步骤:open打开日志文件。移动文件读取指针到文件末尾。从后往前移动指针直到合适的位置。读取文件,提取指定行的数据。优点:时间相对固定,适合处理大文件 示例:[python] view plain copy logFile = open('logFilePath.log', 'r')logFile.seek(0,2)logFile.seek(-1000000,2)rowCount =...
Python 文件操作
所以下一次在用read方法时会发现读取不出内容了,所以这个就要用seek移动指针或者关闭文件重新定义 (3) tell() :返回当前文件指针指向的位置 (4) seek(offset,from) :移动文件指针,代表从from参数开始偏移offset个字节,0代表起始位置,1代表当前位置,2代表文件末尾 (5) readline() :按...
Python读文件能从后往前吗
使用os.path.getsize 获取文件大小 使用 file_obj.seek 移动文件指针到文件末尾减一处 每次读取一个字符,并将文件指针向前移动一 代码实现如下:!/usr/bin/env python# -*- coding: UTF-8 -*-import osdef tail_read(f, n): cur_pos = f.tell() buf = b'' while n: b ...
请问Python中for循环不执行啥情况呢?
read类函数中有指针,当使用一次函数获取内容时指针会跳到下一行,最后一行输入后在使用read类函数就会读取不出内容 使用readlines后,再去使用它的指针会跳到最后面就读出出来了 可以用seek(指针位置)更改指针位置 在第二个for循环前面加个seek(0)记得采纳 ...
python3用read()函数读取文件两次,就变成空字符串了
python在读取文件的时候是根据光标位置来读取的。读一行以后光标位置到了下一行。再来个read又到了下一行。想要重新从头开始读的话用f.seek(0)将光标位置放到最前面。这样再f.read()就是第一行的内容 还有个方法是f.tell()告诉你当前光标的位置。你可以把文件都读完了以后f.tell()一下看看光标位置...
python读写文件,如何将内容添加在文件开头呢
fp.seek(offset[,whence])将文件打操作标记移到offset的位置。这个offset一般是相对于文件的开头来计算的,一般为正数。但如果提供了whence参数就不一定了,whence可以为0表示从头开始计算,1表示以当前位置为原点计算。2表示以文件末尾为原点进行计算。需要注意,如果文件以a或a+的模式打开,每次进行写操作...