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

使用单个int()转换拼接字符串导致数值相加错误的问题咨询

问题原因分析

先看你的代码:

print("Give me two numbers and I'll add them for you")

num_1 = input("Enter first number: ")
num_2 = input("Enter second number: ")

answer = int(num_1 + num_2)
print(answer)

输入5和4得到54的核心原因是:

  • input()函数获取的所有输入默认都是字符串类型,所以你输入的5和4实际被存储为字符串"5"和"4"
  • 字符串之间的+运算符作用是拼接内容,而非数学加法,所以num_1 + num_2得到的是字符串"54"
  • 最后把拼接后的字符串转成整数,输出自然就是54,而非数字5与4相加的结果9
修正方案

有两种简单的修正方式:

  1. 输入时直接转成整数,再执行加法
print("Give me two numbers and I'll add them for you")

num_1 = int(input("Enter first number: "))
num_2 = int(input("Enter second number: "))

answer = num_1 + num_2
print(answer)
  1. 分别将两个字符串转成整数后再相加
print("Give me two numbers and I'll add them for you")

num_1 = input("Enter first number: ")
num_2 = input("Enter second number: ")

answer = int(num_1) + int(num_2)
print(answer)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 07:34:56