Python代码乘法逻辑异常:输入3输出33333,预期结果为30
代码修正方案
原代码问题分析
- 输入未转整数:
input()返回的是字符串类型,numero * 10会执行字符串重复操作(比如输入"3"会变成"3333333333"),而非你需要的数值乘法。 - 冗余循环:
for sum in numero完全多余,输入单个数字时遍历字符串字符没有意义,还会干扰变量赋值。 - 变量名冲突:
sum是Python内置函数名,用作变量会覆盖原函数,不建议这么做。
修正后的代码
numero = int(input('Montako lukua?')) result = numero * 10 print(result)
说明
- 先通过
int()把输入的字符串转为整数,确保后续乘法是数值运算。 - 直接执行整数乘法
numero * 10,输入3时就能得到预期的30。 - 改用
result作为结果变量,避免和内置函数冲突。
内容的提问来源于stack exchange,提问作者Vlaz
相关产品推荐
相关产品推荐

