如何将嵌套列表中的元组转换为列表?

时间:2019-01-15 00:45:14

标签: python

我需要在返回零值的列表中找到三个值。我的代码存在的问题是,它返回带有元组而不是列表的嵌套列表。

输入:

[-1, 0, 1, 2, -1, -4]

输出:

[(-1, -1, 2), (-1, 0, 1)]

预期输出:

[[-1, -1, 2], [-1, 0, 1]]

我的代码:

def threeSum(a):
    N = len(a)
    c=[]
    for i in range(N):
        for j in range(i+1, N):
            for k in range(j+1, N):
                if a[i]+a[j]+a[k] == 0:
                    c.append([a[i],a[j],a[k]])
    b_set = set(tuple(sorted(x)) for x in c)
    #remove duplicates
    return list(b_set)

print(threeSum([-1, 0, 1, 2, -1, -4]))

1 个答案:

答案 0 :(得分:0)

插入此行

b_set = [list(x) for x in b_set]

在返回语句之前以获取预期输出
将您的退货单更改为

return b_set