我正在尝试创建一个列表,该列表由重复出现的字符串填充,并且该数字标记它在行中的哪一个.标记有多少字符串的数字来自int变量.
所以像这样:
b = 5
a = range(2, b + 1)
c = []
c.append('Adi_' + str(a))
Run Code Online (Sandbox Code Playgroud)
我希望这会创建一个这样的列表:
c = ['Adi_2', 'Adi_3', 'Adi_4', 'Adi_5']
Run Code Online (Sandbox Code Playgroud)
相反,我得到这样的列表
c = ['Adi_[2, 3, 4, 5]']
Run Code Online (Sandbox Code Playgroud)
所以当我尝试在新行中打印它时
for x in c:
print"Welcome {0}".format(x)
Run Code Online (Sandbox Code Playgroud)
结果是:
Welcome Adi_[2, 3, 4, 5]
Run Code Online (Sandbox Code Playgroud)
我想要的结果是:
Welcome Adi_2
Welcome Adi_3
Welcome Adi_4
Welcome Adi_5
Run Code Online (Sandbox Code Playgroud)
如果有人有想法我会很感激.
Pie*_* GM 12
你几乎得到了它:
for i in a:
c.append('Adi_' + str(i))
Run Code Online (Sandbox Code Playgroud)
您的初始行将整个列表转换a
为字符串.
请注意,您可以通过列表理解和一些字符串格式来摆脱循环:
c = ['Adi_%s' % s for s in a]
Run Code Online (Sandbox Code Playgroud)
要么
c = ['Adi_{0}'.format(s) for s in a] #Python >= 2.6
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10896 次 |
最近记录: |