Если вы используете регулярное выражение с группой, re.split сохранит разделитель в выводе:
re.split(" *(\+) *","5+2")
['5', '+', '2']
Будет проще использовать, когда вы начнете анализировать несколько операторов:
re.split(" *([\+\-\*/]) *","51 + 2*38.5 - 8/2")
['51', '+', '2', '*', '38.5', '-', '8', '/', '2']