بالنسبة للفاصلة العشرية ايه المشكلة اللي فيها ؟
والسالب محتاج تعرف مكان اخر علامة واللي بعدها يكون اخر رقم
ممكن تعملها با اكتر من طريقة
ممكن بـ loop يبدء من اخر النص او RegExp
lastExp = "5*3+50"
import re
lastExpByRE = re.sub('(\d+)$',' -\\1',lastExp )
print lastExpByRE
#==========================================
i = len(lastExp)-1
while i <> -1 and lastExp not in "/*-+! " :
i-=1
lastExpByLOOP = lastExp[:i+1] + " -" + lastExp[i+1:]
print lastExpByLOOP
#==========================================