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

Python代码运算异常:未执行数值计算而是拼接字符串

问题分析与修复

你的代码存在两个核心问题,导致数字被拼接而非预期的计算:

1. 输入未转换为数值类型

input()函数获取的内容默认是字符串类型,字符串的+操作是拼接而非加法,这就是输入1和1会得到"11"的原因。同时字符串的>=比较是按字符ASCII码逐位对比,和数字大小逻辑完全不同(比如字符串"10"会被判定为小于"2")。

2. 赋值运算符使用错误

你误用了==(比较运算符,用于判断两边是否相等),而非=(赋值运算符,用于给变量赋值)。这会导致变量R从未被定义,运行时会触发NameError,你的测试输出描述可能存在疏漏,但这个错误必须修正。


修正后的代码

# 将输入转为整数(若需支持小数,替换为float())
A = int(input("insert a value: "))
B = int(input("insert another value: "))

if A >= B:
    R = A + B  # 使用=完成赋值,而非==做比较
    print("this is the result", R)
else:
    R = A - B
    print("this is the result", R)

测试验证

  • 测试输入1:A=1,B=1 → 输出:this is the result 2
  • 测试输入2:A=2,B=1 → 输出:this is the result 3
  • 输入A=1,B=2 → 输出:this is the result -1

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 01:01:05