You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中输入数字相加变成字符串拼接,如何正确求和?

问题分析与修复方案

错误原因

Python的input()函数返回的是字符串类型,所以你代码里的a + b执行的是字符串拼接操作,而非数值加法,这就是输入5和10后得到510的原因。

修复方法

需要将用户输入的字符串转换为数值类型(整数int或浮点数float),再执行加法操作,以下是几种实现方式:

方式1:直接转换输入类型

适合只需要整数或固定数值类型的场景:

a = int(input("Enter first number: "))
b = int(input("Enter second number: "))
print("The sum is:", a + b)

如果需要支持小数运算,把int换成float即可:

a = float(input("Enter first number: "))
b = float(input("Enter second number: "))
print("The sum is:", a + b)

方式2:先获取输入再转换(更灵活)

先保存原始输入字符串,再转换为数值类型,方便后续扩展处理:

a_str = input("Enter first number: ")
b_str = input("Enter second number: ")
a = float(a_str)
b = float(b_str)
print("The sum is:", a + b)

补充:添加异常处理(可选)

如果需要避免用户输入非数字导致程序崩溃,可以加入异常捕获:

try:
    a = float(input("Enter first number: "))
    b = float(input("Enter second number: "))
    print("The sum is:", a + b)
except ValueError:
    print("请输入有效的数字!")

内容的提问来源于stack exchange,提问作者Apurva Bhoyar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 01:49:55