<p>如果我理解正确的话,你真正想要的是每两种配料和酱汁的组合,然后是他们的产品。如果是这样,您不需要相同的列表</p>
<pre><code>from itertools import combinations, product
crust = ['Thin Crust', 'Hand Tossed']
topping = ['Bacon', 'Pepperoni', 'Steak']
sauce = ['Tomato', 'BBQ', 'Ranch']
topping_combs = combinations(topping, r=2)
sauce_combs = combinations(sauce, r=2)
# >> FOR DEMO
topping_combs = list(topping_combs)
sauce_combs = list(sauce_combs)
print(topping_combs)
print(sauce_combs)
print()
# << FOR DEMO
prod = product(crust, topping_combs, sauce_combs)
for c, t, s in prod:
print(c, *t, *s, sep=', ')
</code></pre>
<p>输出:</p>
<pre><code>[('Bacon', 'Pepperoni'), ('Bacon', 'Steak'), ('Pepperoni', 'Steak')]
[('Tomato', 'BBQ'), ('Tomato', 'Ranch'), ('BBQ', 'Ranch')]
Thin Crust, Bacon, Pepperoni, Tomato, BBQ
Thin Crust, Bacon, Pepperoni, Tomato, Ranch
Thin Crust, Bacon, Pepperoni, BBQ, Ranch
Thin Crust, Bacon, Steak, Tomato, BBQ
Thin Crust, Bacon, Steak, Tomato, Ranch
Thin Crust, Bacon, Steak, BBQ, Ranch
Thin Crust, Pepperoni, Steak, Tomato, BBQ
Thin Crust, Pepperoni, Steak, Tomato, Ranch
Thin Crust, Pepperoni, Steak, BBQ, Ranch
Hand Tossed, Bacon, Pepperoni, Tomato, BBQ
Hand Tossed, Bacon, Pepperoni, Tomato, Ranch
Hand Tossed, Bacon, Pepperoni, BBQ, Ranch
Hand Tossed, Bacon, Steak, Tomato, BBQ
Hand Tossed, Bacon, Steak, Tomato, Ranch
Hand Tossed, Bacon, Steak, BBQ, Ranch
Hand Tossed, Pepperoni, Steak, Tomato, BBQ
Hand Tossed, Pepperoni, Steak, Tomato, Ranch
Hand Tossed, Pepperoni, Steak, BBQ, Ranch
</code></pre>