鱼C论坛

 找回密码
 立即注册
查看: 1904|回复: 3

[已解决]Python,seek的用法不太会,求教

[复制链接]
发表于 2020-9-10 00:04:38 | 显示全部楼层 |阅读模式
2鱼币
本帖最后由 dong811019 于 2020-9-10 00:05 编辑

f.seek(offset,from),在文件中移动指针的位置,从from(0表示文件头,1表示指针当前位置,2表示文件末尾)处移动offset个字节 #我看到小甲鱼用法时这样写的

>>> f = open('F:/ext.txt')
>>> f.read()
'jdsksdj但肯定喝酒喝酒,但是可说的就是好看快的\n没想到吧\n再来一张吧'

>>> f.seek(0,0)      #问题1, f.seek(0,0)和 f.seek(0)一样的吧,f.seek(0)省略了移动offset字节么?
0
>>> f.read(2)
'jd'

>>> f.seek(2,1)     #问题2,为啥不能当前指针位置继续移动呢?
Traceback (most recent call last):
  File "<pyshell#57>", line 1, in <module>
    f.seek(2,1)
io.UnsupportedOperation: can't do nonzero cur-relative seeks

>>> f.seek(-2,2)  #问题3,如果从文件末尾移动那是不是offset为负了,这种情况该咋用?
Traceback (most recent call last):
  File "<pyshell#60>", line 1, in <module>
    f.seek(-2,2)
io.UnsupportedOperation: can't do nonzero end-relative seeks
最佳答案
2020-9-10 00:04:39
问题1:
2020-9-10 7-15-57.png
所以它省略了whence字段

问题2:在文本文件中,没有使用b模式选项打开的文件,只允许从文件头开始计算相对位置


问题3
2020-9-10 7-18-27.png 按照这个使用,就是负值

最佳答案

查看完整内容

问题1: 所以它省略了whence字段 问题2:在文本文件中,没有使用b模式选项打开的文件,只允许从文件头开始计算相对位置 问题3: ,按照这个使用,就是负值
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-9-10 00:04:39 | 显示全部楼层    本楼为最佳答案   
问题1:
2020-9-10 7-15-57.png
所以它省略了whence字段

问题2:在文本文件中,没有使用b模式选项打开的文件,只允许从文件头开始计算相对位置


问题3
2020-9-10 7-18-27.png 按照这个使用,就是负值

评分

参与人数 1荣誉 +2 鱼币 +2 贡献 +2 收起 理由
张冯的小能豆 + 2 + 2 + 2

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-9-11 00:33:04 | 显示全部楼层
1q23w31 发表于 2020-9-10 00:04
问题1:

所以它省略了whence字段

谢谢,我用二进制的文件可以左右移动文件指针了。请问下你截图是在哪查的呢,一般查到的都没有说whence默认值为0(感觉你找的比较流弊)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-9-11 06:34:42 | 显示全部楼层
dong811019 发表于 2020-9-11 00:33
谢谢,我用二进制的文件可以左右移动文件指针了。请问下你截图是在哪查的呢,一般查到的都没有说whence默 ...

找不到图片在哪了,给你个网址:https://www.yiibai.com/python/file_seek.html
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-15 23:39

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表