Python中如何在字符串两侧使用“join”函数?

6
l = ['1','2','3']
goal = ['<li>1</li>','<li>2</li>']

如何从l中获取goal

我正在使用列表推导式,但它太杂乱了!


3
您的意思是要将列表l中的最后一项(3)排除在goal之外吗? - Levon
3个回答

12

尝试使用字符串格式化和列表推导式,像这样。

goal = ['<li>{0}</li>'.format(x) for x in l]

太好了,谢谢。虽然我使用了你发布的原始代码,但是".format"似乎是多余的。 - matt

1

使用str.format()的两种选项:

goal = map('<li>{0}</li>'.format, l)

...或者...

goal = ['<li>{0}</li>'.format(x) for x in l]

请注意,在Python 3.x中,map()将返回一个迭代器而不是列表,因此如果您想要一个列表,您需要使用list(map(...))

0

使用 string.format 方法

goal = ['<li>{0}</li>'.format(sym)  for sym in l]

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接