我正在编写一个脚本,该脚本记录来自另一个程序的错误,并在遇到错误时重新启动程序。无论出于何种原因,该程序的开发人员认为没有必要默认将此功能放入他们的程序中。
无论如何,程序获取一个输入文件,解析它,然后创建一个输出文件。输入文件采用特定格式:
UI - 26474845
TI - the title (can be any number of lines)
AB - the abstract (can also be any number of lines)
当程序抛出错误时,它会为您提供跟踪错误所需的参考信息 - 即 UI、哪个部分(标题或摘要)以及相对于标题或摘要开头的行号。我想使用一个函数从输入文件中记录有问题的句子,该函数采用参考号和文件,找到句子并记录它。我能想到的最好方法是在文件中前进特定次数(即 n 次,其中 n 是相对于部分开头的行号)。这样做似乎有意义的方式是:
i = 1
while i <= lineNumber:
print original.readline()
i += 1
我不明白这会如何让我丢失数据,但 Python 认为它会,并说ValueError: Mixing iteration and read methods would lose data
. 有谁知道如何正确地做到这一点?