我正在学习Python。我想做以下任务:
['a', 'b', 'c']
例如,我想将"-temp"
添加到列表中的每个元素。所以,输出将是:
"a-temp b-temp c-temp"
当然,我可以编写C / C ++风格。但是,Python中有更优雅或有趣的方式吗?
答案 0 :(得分:8)
>>> ' '.join( x+'-temp' for x in ['a', 'b', 'c'] )
'a-temp b-temp c-temp'
答案 1 :(得分:3)
列表理解是你的朋友:
lst = ['a', 'b', 'c']
print ' '.join(['%s-temp' % item for item in lst])
答案 2 :(得分:3)
当您需要访问和使用列表的每个元素时,请使用列表推导。例如:
l = ['a', 'b', 'c']
' '.join([element + '-temp' for element in l])
答案 3 :(得分:3)
你走了:
s = " ".join(["%s-temp" % s for s in thelist])
包含一个列表推导,它通过字符串插值映射thelist
的元素,生成一个新列表。然后用它们之间的空格连接得到最终的字符串。
答案 4 :(得分:1)
'-temp'.join(list)
我相信会这样做。
几乎:
'-temp '.join(['a','b','c'])+'-temp'
答案 5 :(得分:0)
您可以使用map
功能,如下所示:
l = ['a','b','c']
map((lambda s: s + '-temp'), l)