вот что я могу придумать:
import re
regex = r'[\d]{1,3}, [\d]{1,3}'
result = []
with open('sample.txt') as f:
lines = f.readlines()
for line in lines:
match = re.findall(regex, line)
if match != []:
splitted = match[0].split(',')
#the values are mapped to a list containing floating point numbers
mapped = list(map(float, splitted))
#and then are appended to a list that will contain all of
#the lines that have the numbers on it
result.append(mapped)
print(result)
#this is how you could access each line in result
for list in result:
print(list)
выход
[[67.0, 78.0], [25.0, 18.0]] #result is a list containing all lines that have the pattern <number>, <number>
[67.0, 78.0] #the first line that matches the pattern
[25.0, 18.0] #the second one
здесь используются регулярные выражения для поиска чисел до 3 цифр (но вы можете изменить это на любое, что хотите) в соответствии с шаблоном <number>, <number>
если он соответствует шаблону, он разбивает два числа на ,
, создавая список, содержащий эти два значения, и добавляет их в список результатов
Надеюсь, это поможет.
Любые вопросы, не стесняйтесь задавать.
Редактировать
Я использую это как пример файла, чтобы проиллюстрировать вам:
hi
hi
67, 78
hi again
25, 18