Как выводить нужные слова из строки

Здравствуйте у меня есть файл

< ;^; >ttx.txt,YWxpbmE=< ;^; >vfx.txt,dmFzeWE=< ;^; >pps.txt,dmljdG9y

После < ;^; > идёт название файла, а после названия через запятую идёт текст и у меня вопрос как мне вывести отдельно название файла и отдельно текст с учётом того что подобных строк может быть очень много


Ответы (2 шт):

Автор решения: timur
import re

s = '< ;^; >ttx.txt,YWxpbmE=< ;^; >vfx.txt,dmFzeWE=< ;^; >pps.txt,dmljdG9y'

r = re.findall(r'<\s;\^;\s>(.+?),([^<$]+)', s)

print(r) # [('ttx.txt', 'YWxpbmE='), ('vfx.txt', 'dmFzeWE='), ('pps.txt', 'dmljdG9y')]

for i in r:
    print(f'{i[0]}: {i[1]}')

# ttx.txt: YWxpbmE=
# vfx.txt: dmFzeWE=
# pps.txt: dmljdG9y
→ Ссылка
Автор решения: S. Nick

Как вариант:

_str = "< ;^; >ttx.txt,YWxpbmE=< ;^; >vfx.txt,dmFzeWE=< ;^; >pps.txt,dmljdG9y"

print(*[ ( [j[0], j[1]] if j[1][-1] != '=' else [j[0], j[1][:-1]])  for j in [i.split(',') for i in _str.split('< ;^; >') if i] ], sep=('\n'))

['ttx.txt', 'YWxpbmE']
['vfx.txt', 'dmFzeWE']
['pps.txt', 'dmljdG9y']
→ Ссылка