У меня есть 3 части в моем коде.Моя первая часть говорит мне, что номер строки условие для line1.Моя вторая часть говорит мне, что номер строки условие для line2.Последняя часть делает числа как диапазон и распечатывает диапазон.
Первая часть кода: я получаю результат 6 для num1.
Для второй части кодаЯ получаю 24, когда запускаю сам, но 18, когда запускаю часть 1.
Затем в третьей части я индексирую файл и пытаюсь получить правильные строки для печати, но они неработать, потому что моя первая часть моего кода - это изменение чисел, когда оба условия выполняются одновременно.
Есть ли лучший способ запустить этот код с помощью простого индексирования или перечисления?Мне нужно иметь пользовательский ввод и иметь возможность распечатывать диапазон файлов на основе ввода.
#Python3.7.x
#
#
import linecache
#report=input('Name of the file of Nmap Scan:\n')
#target_ip=input('Which target is the report needed on?:\n')
report = "ScanTest.txt"
target_ip = "10.10.100.2"
begins = "Nmap scan report for"
fhand = open(report,'r')
beginsend = "\n"
#first statement
for num1,line1 in enumerate(fhand, 1):
line1 = line1.rstrip()
if line1.startswith(begins) and line1.endswith(target_ip):
print(num1)
print(line1)
break
#second statement
for num2,line2 in enumerate(fhand, 1):
line2 = line2.rstrip()
if line2.startswith(beginsend) and num2 > num1:
print(num2)
print(line2)
break
with open('ScanTest.txt') as f:
linecount = sum(1 for line in f)
for i in range(num1,num2):
print(linecache.getline("ScanTest.txt", i))