Linecache в Python не кэширует указанные строки
Я использую linecache, чтобы получить строки до появления строки. Но это не работает. Я не могу понять, в чем проблема?
with open(fileName, 'r') as inFile:
between = False
for num, line in enumerate(inFile, 1):
if st_time in line:
between = True
if between:
if 'Broken pipe' in line:
line1 = linecache.getline(fileName, num-55)
if 'ERROR' in line1:
print("yes")
if en_time in line:
between = False
1 ответ
Это была проблема, которую один из вас упомянул. Linecache не будет хранить все строки, он будет хранить только указанную строку. Например, line1 = linecache.getline(fileName, num - 22) будет хранить только (num -22) -ю строку. Я думал, что он будет храниться до (num-22) -ой строки.