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

为何integer无法与string相加?代码报TypeError及预期输出咨询

问题原因及解决方法

错误原因

  1. 类型不匹配:你把输入的n转为了整数类型,而str1是字符串,Python不允许直接将整数与字符串做拼接操作,这会触发TypeError。
  2. 逻辑错误:循环变量是i(从1到n),但你拼接的是n而非i——就算类型问题解决,输入5也会得到"55555",不符合你想要的"12345"预期。

修复方法

方法一:循环内转换类型拼接

直接在循环里把当前整数i转为字符串,再拼接到str1上:

n = int(input('Enter any number :'))
str1 = ""
for i in range(1, n+1):
    str1 += str(i)
print(str1)

方法二:用join方法优化(更高效)

当n较大时,字符串直接拼接效率偏低,推荐使用join结合生成器表达式:

n = int(input('Enter any number :'))
str1 = ''.join(str(i) for i in range(1, n+1))
print(str1)

内容的提问来源于stack exchange,提问作者Yash Kumar Panjwani

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 12:45:43