python中integer是什么意思_Python String和Integer连接

Python String和Integer连接

这个问题在这里已有答案:

在Python中用字符串和整数创建一个字符串[复制]                                     6个答案

我想在for循环中使用附加到它的整数创建字符串。 像这样:

for i in range(1,11):

string="string"+i

但它返回一个错误:

TypeError: unsupported operand type(s) for +: 'int' and 'str'

连接String和Integer的最佳方法是什么?

9个解决方案

254 votes

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']

YOU answered 2019-02-08T14:36:26Z

191 votes

注意:

此答案(反引号)中使用的方法在Python 2的更高版本中已弃用,并在Python 3中删除。请改用string0, string1 ..... string10函数。

您可以使用 :

string = 'string'

for i in range(11):

string +=`i`

print string

它将打印string0, string1 ..... string10。

要获得string0, string1 ..... string10,您可以将其用作@YOU建议

>>> string = "string"

>>> [string+`i` for i in range(11)]

根据Python3更新

您可以使用 :

string = 'string'

for i in range(11):

string +=str(i)

print string

它将打印string0, string1 ..... string10。

要获得string0, string1 ..... string10,您可以将其用作@YOU建议

>>> string = "string"

>>> [string+str(i) for i in range(11)]

Anirban Nag 'tintinmj' answered 2019-02-08T14:35:58Z

33 votes

string = 'string%d' % (i,)

Ignacio Vazquez-Abrams answered 2019-02-08T14:36:48Z

32 votes

for i in range[1,10]:

string = "string" + str(i)

str(i)函数将整数转换为字符串。

Rizwan Kassim answered 2019-02-08T14:37:15Z

18 votes

for i in range(11):

string = "string{0}".format(i)

你做了什么(a[3])

一个TypeError,因为括号表示列表的索引(a[3])或切片(a[3:5]),

自string = "string" + i以来的SyntaxError无效,和

string = "string" + i自[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的新字符串格式化方法的文档,它非常强大。

Tim Pietzcker answered 2019-02-08T14:38:19Z

4 votes

你可以使用发电机来做到这一点!

def sequence_generator(limit):

""" A generator to create strings of pattern -> string1,string2..stringN """

inc = 0

while inc < limit:

yield 'string'+str(inc)

inc += 1

# to generate a generator. notice i have used () instead of []

a_generator = (s for s in sequence_generator(10))

# to generate a list

a_list = [s for s in sequence_generator(10)]

# to generate a string

a_string = '['+", ".join(s for s in sequence_generator(10))+']'

1 votes

如果我们想要输出像range()那么我们可以使用map function和join字符串的方法。

>>> 'string'+"".join(map(str,xrange(10)))

'string0123456789'

如果我们想要字符串值List,那么使用range()方法。

>>> ['string'+i for i in map(str,xrange(10))]

['string0', 'string1', 'string2', 'string3', 'string4', 'string5', 'string6', 'string7', 'string8', 'string9']

注意:

对于Python 2.x,请使用range()

用于Python 3.x的range()

Vivek Sable answered 2019-02-08T14:39:41Z

1 votes

我做了别的事。我想替换包含短语的列表中的单词。我想用一个新单词替换该字符串/单词,该单词将是字符串和数字之间的连接,该数字/数字将指示短语/子列表/列表列表的位置。

也就是说,我用一个字符串和一个跟随它的增量数字替换了一个字符串。

myoldlist_1=[[' myoldword'],[''],['tttt myoldword'],['jjjj ddmyoldwordd']]

No_ofposition=[]

mynewlist_2=[]

for i in xrange(0,4,1):

mynewlist_2.append([x.replace('myoldword', "%s" % i+"_mynewword") for x in myoldlist_1[i]])

if len(mynewlist_2[i])>0:

No_ofposition.append(i)

mynewlist_2

No_ofposition

Elias EstatisticsEU answered 2019-02-08T14:40:18Z

-5 votes

字符串和整数的串联很简单:只是用

abhishek+str(2)

Hiro answered 2019-02-08T14:40:47Z

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值