一尘不染

在Python中将相同的字符串追加到字符串列表

python

我正在尝试采用一个字符串,并将其附加到列表中包含的每个字符串中,然后使用完成的字符串创建一个新列表。例:

list1 = ['foo', 'fob', 'faz', 'funk']
string = 'bar'

*magic*

list2 = ['foobar', 'fobbar', 'fazbar', 'funkbar']

我尝试了循环,并尝试了列表理解,但这是垃圾。一如既往的任何帮助,不胜感激。


阅读 314

收藏
2021-01-20

共1个答案

一尘不染

最简单的方法是使用列表理解:

[s + mystring for s in mylist]

请注意,我避免使用内置名称,list因为那样会掩盖或隐藏内置名称,这非常不好。

另外,如果您实际上不需要列表,而只需要一个迭代器,则生成器表达式可能会更高效(尽管在短列表中这并不重要):

(s + mystring for s in mylist)

这些功能非常强大,灵活且简洁。每个好的python程序员都应该学会使用它们。

2021-01-20