import re
text = "Emails like {annie,bonnie}@gmail.com, annie2@gmail.com, then a bonnie2@gmail.com."
emails = []
rx_email = re.compile( r'(?:{([^{}]*)}|\b\w[\w.-]*)(@[\w.-]+\.\w+)' )
for m in rx_email.finditer(text):
	if m.group(1):
		for email in m.group(1).split(','):
			emails.append(f'{email}{m.group(2)}')
	else:
		emails.append(m.group())
print(emails)