Python3中的列表

Python3中的列表,python,python-3.x,Python,Python 3.x,所以问题是我有一个由成对的数字组成的列表[(0,0),(0,1)(0,2)…等等,我想知道如何从这个列表中删除所有具有相同数字的对。列表是由这个函数创建的 l1 = [] def fun2(x,y): for x in range(x+1): for y in range(y+1): l1.append((x,y)) return l1 方法1:使用: lst = [c for c in l1 if c[0] != c[1]] ls

所以问题是我有一个由成对的数字组成的列表[(0,0),(0,1)(0,2)…等等,我想知道如何从这个列表中删除所有具有相同数字的对。列表是由这个函数创建的

 l1 = []
 def fun2(x,y):
    for x in range(x+1):
        for y in range(y+1):
            l1.append((x,y))
    return l1
方法1:使用:

lst = [c for c in l1 if c[0] != c[1]]
lst = []
for elem in l1:
    if elem[0] != elem[1]:
        lst.append(elem)
方法2:手动生成列表:

lst = [c for c in l1 if c[0] != c[1]]
lst = []
for elem in l1:
    if elem[0] != elem[1]:
        lst.append(elem)
方法1:使用:

lst = [c for c in l1 if c[0] != c[1]]
lst = []
for elem in l1:
    if elem[0] != elem[1]:
        lst.append(elem)
方法2:手动生成列表:

lst = [c for c in l1 if c[0] != c[1]]
lst = []
for elem in l1:
    if elem[0] != elem[1]:
        lst.append(elem)

生成列表时可以避免重复元组元素。如果,只需添加一个

def fun2(x, y):
    result = []
    for a in range(x+1):
        for b in range(y+1):
            if a != b:
                result.append((a,b))
    return result
这也可以更简洁地写成一个列表:

result = [(a, b) for a in range(x+1) for b in range(y+1) if a != b]
result = [pair for pair in result if pair[0] != pair[1]]
另一种选择是使用:


通过列表理解,也可以在之后删除项目:

result = [(a, b) for a in range(x+1) for b in range(y+1) if a != b]
result = [pair for pair in result if pair[0] != pair[1]]
这将创建一个不包含重复项的新列表,然后将其重新绑定到
结果
。您可以使用以下内容覆盖该列表:


生成列表时可以避免重复元组元素。如果
,只需添加一个

def fun2(x, y):
    result = []
    for a in range(x+1):
        for b in range(y+1):
            if a != b:
                result.append((a,b))
    return result
这也可以更简洁地写成一个列表:

result = [(a, b) for a in range(x+1) for b in range(y+1) if a != b]
result = [pair for pair in result if pair[0] != pair[1]]
另一种选择是使用:


通过列表理解,也可以在之后删除项目:

result = [(a, b) for a in range(x+1) for b in range(y+1) if a != b]
result = [pair for pair in result if pair[0] != pair[1]]
这将创建一个不包含重复项的新列表,然后将其重新绑定到
结果
。您可以使用以下内容覆盖该列表:


写下你的预期输出。这个输出没有生成duplicates@user1767754:我不认为这是关于重复的配对。这是关于具有重复数字的配对。例如
(0,0)
。如下文所述,在构建列表时最好避免附加不需要的对。他们在教你ifs之前教你循环?写下你期望的输出。这一个不会生成duplicates@user1767754:我不认为这是关于重复的配对。这是关于具有重复数字的配对。例如
(0,0)
。如下文所述,在构建列表时最好避免附加不需要的对。他们在教你ifs之前教你循环?