例如,我有一个这样的列表:
list1 = [good, bad, tall, big]list2 = [boy, girl, guy, man]
我想做一个这样的列表:
list3 = [goodboy, badgirl, tallguy, bigman]
我尝试过这样的东西:
list3=[]list3 = list1 + list2
但这只会包含list1的值
所以我用于:
list3 = []for a in list1:for b in list2:c = a + blist3.append(c)
但会导致列表太多(在这种情况下,4 * 4 = 16)
我该怎么办?任何帮助将是非常好的!
您可以使用列表推导与zip:
list3 = [a + b for a, b in zip(list1, list2)]
zip通过组合您提供的迭代元素来生成元组列表.所以在你的情况下,它会从list1和list2中返回成对的元素,直到首先被用尽.
还可以使用extend
>>> x = [1,2,3]>>> y = [4,5,6]>>> x + y[1, 2, 3, 4, 5, 6]>>> x.extend(y)>>> x[1, 2, 3, 4, 5, 6]
参考网址 /developer/ask/35138