from functools import reduce def str2num(s): if s.isdigit(): return int(s) return float(s) def calc(exp): ss = exp.split('+') ns = map(str2num, ss) return reduce(lambda acc, x: acc + x, ns) def main(): r = calc('100+200+345') print('100 + 200 + 345 =', r) r = calc('99+88+7.6') print('99 + 88 + 7.6 =', r) main()
100 + 200 + 345 = 645
99 + 88 + 7.6 = 194.6
Sign in to make a reply
liuwei2262