我正在使用file.readline()以只读模式浏览文本文件的Python文件指针,以查找特殊行。找到该行后,我想将文件指针传递给一个方法,该方法期望文件指针位于该读取行的开始位置(而不是紧随其后)。
我如何实质上撤消对文件指针的一个file.readline()操作?
您必须通过file.tell()
在阅读行之前致电,然后致电file.seek()
倒带来记住位置。就像是:
fp = open('myfile')
last_pos = fp.tell()
line = fp.readline()
while line != '':
if line == 'SPECIAL':
fp.seek(last_pos)
other_function(fp)
break
last_pos = fp.tell()
line = fp.readline()
我不记得在循环file.seek()
内调用是否安全,for line in file
因此我通常只写出while
循环即可。可能有更多的Python方式可以做到这一点。
本文向大家介绍Git 撤销操作、删除文件和恢复文件,包括了Git 撤销操作、删除文件和恢复文件的使用技巧和注意事项,需要的朋友参考一下 大致介绍 经过前面的学习,已经建立了版本库,并上传了文件,这次来学习对这些文件进行基本的操作,即: ◆ 撤销操作 ◆ 删除文件 ◆ 恢复文件 我在此之前,已经将三个文件提交到了版本库 撤销操作 撤销操作的语法: git checkout -
你可以使用复制任务( Copy )去复制文件. 复制任务扩展性很强,能够过滤复制文件的内容, 映射文件名. 使用复制任务时需要提供想要复制的源文件和一个目标目录,如果你要指定文件被复制时的转换方式,可以使用 复制规则. 复制规则被 CopySpec 接口抽象,复制任务实现了这个接口. 使用 CopySpec.from() 方法指定源文件.使用 CopySpec.into() 方法指定目标目录. 例
Rust通过限制智能指针的行为保障了编译时安全,不过仍需要对指针做一些额外的操作。 *const T和*mut T在Rust中被称为“裸指针”。它允许别名,允许用来写共享所有权的类型,甚至是内存安全的共享内存类型如:Rc<T>和Arc<T>,但是赋予你更多权利的同时意味着你需要担当更多的责任: 不能保证指向有效的内存,甚至不能保证是非空的 没有任何自动清除,所以需要手动管理资源 是普通旧式类型,也
在任何一个阶段,你都有可能想要撤消某些操作。 这里,我们将会学习几个撤消你所做修改的基本工具。 注意,有些撤消操作是不可逆的。 这是在使用 Git 的过程中,会因为操作失误而导致之前的工作丢失的少有的几个地方之一。 有时候我们提交完了才发现漏掉了几个文件没有添加,或者提交信息写错了。 此时,可以运行带有 --amend 选项的提交命令尝试重新提交: $ git commit --amend 这个
如果你有其他想法,请分享 谢了!
概述 Sublime Text 可以通过删除 data 文件夹的方式恢复到初始状态。不同操作系统这个文件夹的位置也不同: OS X:~/Library/Application Support/Sublime Text 3 Windows:%APPDATA%\Sublime Text 3 Linux:~/.config/sublime-text-3 恢复到初始状态,你需要: 退出 Sublime T