我有四个不同长度的列表。此外,每次我运行程序时,每个列表的长度都会不同。
这是 4 个可能列表的简单示例
A_list = [1, 2, 3]
B_list = [4]
C_list = [5, 6, 7, 8]
D_list = [9, 10]
我想制作一个如下所示的新列表:
answer = [[1, 4], [2, 5], [3, 6], [7, 9], [8, 10]]
到目前为止,这是我的代码。
answer = []
answer.append(list(zip(A_list, B_list)))
if len(A_list) < len(B_list):
leftover_V_list = V_list[len(B_list):]
answer.append(list(zip(leftover_B_list, C_list)))
elif len(A_list) > len(B_list):
leftover_A_list = A_list[len(B_list):]
answer.append(list(zip(leftover_A_list, C_list)))
print(answer)
>>>
[[(1, 4)], [(2, 5), (3, 6)]]
所以我的代码有一些问题。以下是我正在努力解决的一些问题:
- 我得到了正确的数字,但它们的格式错误。
- 我不确定如何继续 C_list 和 D_list 的其余部分
- 如何处理空列表的可能性
此外,我很确定我完全错了。必须有更好的方法来做到这一点。请帮忙。
我正在使用 python 3.2.3
以下是列表的一些示例:
A_list = [1]
B_list = [2, 3]
C_list = [4, 5, 6, 7]
D_list = [8]
answer = [[1, 2], [3, 4], [5, 8], [6], [7]]
A_list = [1, 2, 3]
B_list = []
C_list = [4]
D_list = [5, 6]
answer = [[1, 4], [2, 5], [3, 6]
A_list = [1, 2, 3]
B_list = []
C_list = []
D_list = [5, 6]
answer = [[1,5], [2,6], [3]]
A_list = [1]
B_list = [2]
C_list = [3]
D_list = [4]
answer = [[1, 2], [3, 4]]