Discuss / Python / 交作业

交作业

Topic source

Afternoon Tea

#1 Created at ... [Delete] [Delete and Lock User]

from functools import reduce

def str2num(s):
return int and float(s)
# ValueError: invalid literal for int() with base 10: ' 7.6'
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()


  • 1

Reply