Попробуйте это
parts = [x for x in re.compile('([\d]{2}:[\d]{2}:[\d]{2}.[\d]{2})').split(s) if x]
Output
['05:38:14.01',
' M654 P15-17 Tnow 32 PyQ 64 Times 67 49 60',
'05:38:14.01',
' M654 P15-17 Tnow 60 PyQ 64 Times 55 44',
'05:38:14.01',
' M654 P15-17 Tnow 8 PyQ 64 Times 26 15',
'05:38:14.01',
' M654 P15-17 Tnow 60 PyQ 64 Times 54 45',
'05:38:14.01',
' M654 P15-17 Tnow 8 PyQ 64 Times 37 1 20',
'05:38:14.01',
' M654 P15-17 Tnow 28 Ncyt 64 Times 55 44']
Это будет разделяться при каждом появлении регулярного выражения, соответствующего метке времени, где s - ваша строка.
Затем попарно объедините элемент метки времени в списке с помощью текстовый элемент.
strings = ["".join(parts[i] + parts[i+1]) for i in range(len(parts) - 1)[::2]]
Output
['05:38:14.01 M654 P15-17 Tnow 32 PyQ 64 Times 67 49 60',
'05:38:14.01 M654 P15-17 Tnow 60 PyQ 64 Times 55 44',
'05:38:14.01 M654 P15-17 Tnow 8 PyQ 64 Times 26 15',
'05:38:14.01 M654 P15-17 Tnow 60 PyQ 64 Times 54 45',
'05:38:14.01 M654 P15-17 Tnow 8 PyQ 64 Times 37 1 20',
'05:38:14.01 M654 P15-17 Tnow 28 Ncyt 64 Times 55 44']
Может быть решение oneliner с более сложным регулярным выражением. Я не силен в регулярных выражениях извините.