为什么整数不能与字符串相加

问题描述 投票:0回答:4
n=int(input('Enter any number :'))
str1=""
for i in range(1,n+1):
  str1+=n
print(str1)

我尝试了上面提到的代码,它给了我类型错误,我的期望是 例如 n=5 输出:12345

python string integer output typeerror
4个回答
1
投票

您的代码中有两个错误:

  1. 您尝试连接
    n
    而不是
    i
  2. 无法将整数连接到字符串值。

现在,这是我的建议:

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

0
投票

正如其他人提到的,您必须在连接之前将整数转换为字符串, 下面使用,这个方法称为'列表理解'

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

0
投票

在 Python 中,如果尝试使用 + 运算符连接字符串和整数,则会出现运行时错误。那是因为 Python 是“强类型”语言。还有多种其他方法可以执行此操作。我在 Stack Overflow 上发现了很多类似的问题。例如,this有人可能会给你答案。


0
投票

"string" + str(1)

而不是

"string" + 1
    

© www.soinside.com 2019 - 2024. All rights reserved.