第二种列表推导使用了 zip 函数。这个函数接收可迭代对象为参数,将对象中对应的元素打包成元组。如果你期望从多个数据序列中一一对应的构造新数据序列时,你将会经常的用到这个函数。
1 2
[(name, suit) for name in names for suit in suits if name == 'Arthur'] # [('Arthur', 'Spade'), ('Arthur', 'Heart'), ('Arthur', 'Diamond'), ('Arthur', 'Club')]