from functools import reduce
import logging as log
def str2num(s):
try:
return int(s)
except ValueError :
return int(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()
except ValueError as e:
log.exception(e)
Sign in to make a reply
来自cx301-5星系
from functools import reduce
import logging as log
def str2num(s):
try:
return int(s)
except ValueError :
return int(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)
try:
main()
except ValueError as e:
log.exception(e)