Вот еще один подход, использующий собственные методы строк и списков, так как я обычно забываю синтаксис регулярных выражений, когда я его не трогал в течение некоторого времени:
tag = "-aet" # Define what tag we're looking for.
with open("file.txt", "r") as f: # Read file.
for line in f: # Loop through every line.
line_split = line.split() # Split line by whitespace.
if tag in line_split and line_split[-1] != tag: # Check if the tag exists and that it's not the last element.
try:
index = line_split.index(tag) + 1 # Get the tag's index and increase by one to get its value.
value = int(line_split[index]) # Convert string to int.
except ValueError:
continue # We use try/except in case the value cannot be cast to an int. This may be omitted if the data is reliable.
print value # Now you have the value.
Было бы интересно провести сравнительный анализ, но обычно регулярное выражение медленнее , так что это может выполняться быстрее, особенно если файл очень большой.