我有一个列表列表,其中第一个列表的每个元素都由第二个列表和一个整数组成。
我想要做的是将单个整数与列表中的每个元素相关联,从而使第一个列表的元素成为代码中2个元素的列表。我还没有得到如何做到这一点的线索。
这是我用来测试的代码:
list1 = [[1,2,3],[1,2,3,4]]
list2 = []
list3 = []
for element in range (len(list1)):
list2.append(list1[element][0])
list2.append(list3)
list3.append([list1[element][1:]])
list3[element].append(list1[element][0])
print(list3)
答案 0 :(得分:1)
第一个例子的简单方法:
l = [1,[2,3]]
final_l = [[l[0], i] for i in l[-1]]
输出:
[[1, 2], [1, 3]]
更大范例的解决方案:
l = [[1,[2,3]], [3, [45, 2]], [6, [12, 2]], [3, [3, 4]]]
final_l = [[[c, a] for c in b] for a, b in l]
输出:
[[[2, 1], [3, 1]], [[45, 3], [2, 3]], [[12, 6], [2, 6]], [[3, 3], [4, 3]]]
答案 1 :(得分:0)
试试这个:
list2 = [[[l[0], num] for num in l[1:]] for l in list1]
输出结果为:
list2 = [[[1, 2], [1, 3]], [[1, 2], [1, 3], [1, 4]]]
答案 2 :(得分:0)
您可以尝试使用这种方法:
l = [[1,[2,3]], [3, [45, 2]], [6, [12, 2]], [3, [3, 4]]]
print(list(map(lambda x:list(map(lambda y:[y,x[0]],x[1])),l)))
输出:
[[[2, 1], [3, 1]], [[45, 3], [2, 3]], [[12, 6], [2, 6]], [[3, 3], [4, 3]]]