假设我有:
list_a = [1, 2, 3, 4, 5]
list_b = ['a', 'b', 'c']
我预计结果会是这样的,所以我以后可以很容易地访问它:
list_c = [['a', 1], ['a', 2], ['a', 3], ...]
最简单的方法是什么?
- 这两个列表的长度不同
- 我需要
list_b
中的每个字母都有五个对应的数字,基本上是所有可能的组合,因为我以后需要很容易地访问ie.[c, 4]
我只是试图将list_a
和list_b
附加到list_c
上,但显然没有按计划进行。
我不能使用zip
、itertools
等内置函数。
使用带有2个for语句的列表理解:
list_c = [[b, a] for b in list_b for a in list_a]
输出:[['a', 1], ['a', 2], ['a', 3], ['a', 4], ['a', 5], ['b', 1], ['b', 2], ['b', 3], ['b', 4], ['b', 5], ['c', 1], ['c', 2], ['c', 3], ['c', 4], ['c', 5]]