Хорошо, начиная с того, как вы открываете файл, его проще открыть с помощью диспетчера контекста, подобного этому, затем он обрабатывает открытие / закрытие за вас.
with open('input.txt') as f:
lines = f.readlines()
О том, почему ваш код не ' t работает, вы должны учитывать, что file_handle.readlines () делает и сохраняет. Я полагаю, у вас сложилось впечатление, что lines
содержит:
['Aladdin', 'Batman', 'Dinosaurs', 'Edgar', 'Fruitloop', 'Mongoose']
, хотя на самом деле он содержит:
['Aladdin\n', 'Batman\n', 'Dinosaurs\n', 'Edgar\n', 'Fruitloop\n', 'Mongoose']
Вы можете использовать такое понимание списка, чтобы очистить этот переход от новой строки выкл .:
lines = [l.replace('\n', '') for l in lines]
Тогда ваш лог c должен работать нормально. Таким образом, попробуйте что-то вроде этого:
with open('input.txt') as f:
lines = f.readlines()
lines = [l.replace('\n', '') for l in lines]
print(lines)
lo_limit = 'Batman'
up_limit = 'Fruitloop'
for ln in lines:
if ln >= lo_limit and ln <= up_limit:
print(ln)
, что дает результат:
['Aladdin', 'Batman', 'Dinosaurs', 'Edgar', 'Fruitloop', 'Mongoose']
Batman
Dinosaurs
Edgar
Fruitloop