原代码运行时抛出ValueError: invalid literal for int() with base 10: ' 7.6',定位到错误原因为int()无法将字符串' 7.6'转换为整数,改为使用float()转换为浮点数即可。
ValueError: invalid literal for int() with base 10: ' 7.6'
int()
' 7.6'
float()
修改后的代码:
def str2num(s): return float(s)
不行。 这样的话第一个测试结果也会变成浮点数而不是整数答案。 所以要加个判断是不是浮点数,然后再根据情况返回整数或浮点数。
Sign in to make a reply
KonoNA7
原代码运行时抛出
ValueError: invalid literal for int() with base 10: ' 7.6'
,定位到错误原因为int()
无法将字符串' 7.6'
转换为整数,改为使用float()
转换为浮点数即可。修改后的代码: