假设我有一张纸牌花色列表,如下所示:
suits = ["h","c", "d", "s"]
我想为每个花色添加一种牌,这样我的结果就像
aces = ["ah","ac", "ad", "as"]
有没有一种简单的方法可以做到这一点,而无需重新创建一个全新的列表并使用for
循环?
假设我有一张纸牌花色列表,如下所示:
suits = ["h","c", "d", "s"]
我想为每个花色添加一种牌,这样我的结果就像
aces = ["ah","ac", "ad", "as"]
有没有一种简单的方法可以做到这一点,而无需重新创建一个全新的列表并使用for
循环?
这必须是“最简单”的方式
>>> suits = ["h","c", "d", "s"]
>>> aces = ["a" + suit for suit in suits]
>>> aces
['ah', 'ac', 'ad', 'as']
另一种选择,地图功能:
aces = map(( lambda x: 'a' + x), suits)
如果你想添加一些不同于“a”的东西,你也可以试试这个:
foo = ['h','c', 'd', 's']
bar = ['a','b','c','d']
baz = [x+y for x, y in zip(foo, bar)]
>>> ['ha', 'cb', 'dc', 'sd']