作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个简单的 python 文件:f = open('example.txt, 'r')
。
如何在不更新光标的情况下阅读它:
示例:f 内容“1234”
。
给定以下脚本:
print f.read(1)
print f.read(1)
它将打印:12
。如何让它打印11
?
最佳答案
您可以使用f.seek(0)
。
演示:
>>> from io import StringIO
>>> s = StringIO('1234')
>>> s.read(1)
>>> '1'
>>> s.seek(0)
>>> 0
>>> s.read(1)
>>> '1'
If I want to "reset" only certain reads, how can I do it?
我不完全确定你在问什么。
您可以使用s.tell()
获取当前位置,因此s.seek(s.tell() - 1)
可以这么说,“重置一个read(1)
”。
>>> s = StringIO('1234')
>>> s.read(1)
>>> '1'
>>> s.read(1)
>>> '2'
>>> s.read(1)
>>> '3'
>>> s.seek(s.tell() - 1)
>>> 2
>>> s.read(1)
>>> '3'
I want a function read(file, count, modify_cursor=False)
>>> s = StringIO('abcdefghijk')
>>>
>>> def read(file, count, modify_cursor=False):
...: here = file.tell()
...: content = file.read(count)
...: if not modify_cursor:
...: file.seek(here)
...: return content
...:
>>> read(s, 3)
>>> 'abc'
>>> read(s, 3)
>>> 'abc'
>>> read(s, 3, modify_cursor=True)
>>> 'abc'
>>> read(s, 1)
>>> 'd'
>>> read(s, 1000)
>>> 'defghijk'
>>> read(s, 1)
>>> 'd'
关于python - 如何在不更新光标的情况下读取文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53214576/
我是一名优秀的程序员,十分优秀!