我想在for循环中使用一个整数来创建一个字符串。是这样的:

for i in range(1, 11):
  string = "string" + i

但是它会返回一个错误:

不支持'int'和'str'的操作数类型

连接字符串和整数的最佳方法是什么?


当前回答

for i in range (1,10):
    string="string"+str(i)

要获得string0,请输入string1 .....String10,你可以这样做

>>> ["string"+str(i) for i in range(11)]
['string0', 'string1', 'string2', 'string3', 'string4', 'string5', 'string6', 'string7', 'string8', 'string9', 'string10']

其他回答

for i in range[1,10]: 
  string = "string" + str(i)

函数的作用是:将整数转换为字符串。

字符串和整数的连接很简单: 只使用

abhishek+str(2)
for i in range (1,10):
    string="string"+str(i)

要获得string0,请输入string1 .....String10,你可以这样做

>>> ["string"+str(i) for i in range(11)]
['string0', 'string1', 'string2', 'string3', 'string4', 'string5', 'string6', 'string7', 'string8', 'string9', 'string10']
string = 'string%d' % (i,)
for i in range(11):
    string = "string{0}".format(i)

你做了(范围[1,10]):

由于括号表示列表的索引([3])或切片(a[3:5]), a SyntaxError,因为[1,10]无效,并且 由于范围(1,10)为[1,2,3,4,5,6,7,8,9],因此出现双离一错误,而您似乎想要[0,1,2,3,4,5,6,7,8,9,10]

string = "string" + i是一个TypeError,因为你不能向字符串中添加整数(不像JavaScript)。

查看Python新的字符串格式化方法的文档。它非常强大。