Python:延长列表中的元素

Python:延长列表中的元素,python,list,Python,List,我试图在旧列表的基础上创建一个新列表,从['a'、'b'、'c']到['a12'、'b12'、'c12'] 经典的方法可以是: a = ['a','b','c'] aa = [] for item in a: aa.append(item + '12') print aa 但是,我想学习更好的方法,因此我尝试: aa = a.extend('12%s' % item for item in l[:]) 及 但它们并不能产生最正确的结果。更好的方法是什么 谢谢。使用map内置功能

我试图在旧列表的基础上创建一个新列表,从['a'、'b'、'c']到['a12'、'b12'、'c12']

经典的方法可以是:

a = ['a','b','c']
aa = []

for item in a:
    aa.append(item + '12')

print aa
但是,我想学习更好的方法,因此我尝试:

aa = a.extend('12%s' % item for item in l[:])

但它们并不能产生最正确的结果。更好的方法是什么


谢谢。

使用
map
内置功能

a  = ['a','b','c']
aa = map(lambda x:x+"12",a)
print aa
>> ['a12', 'b12', 'c12']

aa=[item+'12'表示a中的item]
map
filter
在大多数情况下,与列表理解相比,它们的Pythonic功能要弱一些对于像我这样的新手来说,lambda’可能不是一条捷径。所以希望你不介意我没有选择你的答案即使你的答案也是最早的。:)@MarkK yep没问题:),好的是你学到了一些新东西。
item.join('12')
如果你不想做什么,请在使用它之前阅读
join
上的文档
a.extend
将项目添加到
a
并返回None。
a  = ['a','b','c']
aa = map(lambda x:x+"12",a)
print aa
>> ['a12', 'b12', 'c12']