words = t.split(' ')
names = []
while words:
    w = words.pop(0)
if w.startswith('@'):
    names.append(w[1:])
else:
    break
text = ' '.join(words)
print(names)
print(text)
Разделение строк в требуемом формате, Pythonic? (с регулярным выражением или без него)