У меня есть сценарий python, который принимает вводимые пользователем данные, затем ищет текстовый файл и печатает строку. Однако, когда пользователь вводит число, отличное от других чисел, он распечатывает все, что связано.
Например, если пользователь вводит STT1, но есть другая строка, которая называется STT12, 13, 14 и т.д. c. Сценарий распечатывает каждую строку, поскольку в ней стоит цифра 1. Как сделать так, чтобы сценарий выводил только точное совпадение?
Пример вывода
Please enter your area: TTT17
Please enter STT name: STT1
STT Location:
TTT17 | STT1 | Floor 1 | Row 2 | Section 2
STT Location:
TTT17 | STT13 | Floor 1 | Row 22 | Section 2
STT Location:
TTT17 | STT14 | Floor 1 | Row 22 | Section 2
STT Location:
TTT17 | STT17 | Floor 1 | Row 42 | Section 2
STT Location:
TTT17 | STT18 | Floor 1 | Row 42 | Section 2
Пример кода
def find_stt():
with open('{}'.format(db_file), 'r') as f:
find_flag = False
for line in f.readlines():
if line.startswith(area) and name in line:
print("\n" + "\n" + "\n" + color.BOLD + "STT Location:" + color.END +
"\n" + "\n" + color.BOLD + ' '.join(line.split()) + color.END + "\n")
find_flag = True
if not find_flag:
failed_search()