代码之家  ›  专栏  ›  技术社区  ›  Owen

从列表中删除非重复项(python)[重复]

  •  0
  • Owen  · 技术社区  · 2 年前

    我有以下清单:

    mylist = [['TX', 'DALLAS'],
     ['TX', 'DALLAS'],
     ['CA', 'LA'],
     ['CA', 'LA'],
     ['ID', 'BOISE']],
    

    我一直在尝试编写一个循环,生成一个只包含重复项的新列表。

    这是我当前的代码:

    for i in mylist:
      if mylist.count(i) > 1:
        mylist.remove(i)
    
    mylist
    

    我的输出:

    [['TX', 'DALLAS'], ['CA', 'LA'], ['ID', 'BOISE']]
    
    

    因此,输出为:

    [['TX', 'DALLAS'], ['CA', 'LA']],
    
    1 回复  |  直到 2 年前
        1
  •  1
  •   Dan Nagle    2 年前
    list_of_lists = [['TX', 'DALLAS'],
                     ['TX', 'DALLAS'],
                     ['CA', 'LA'],
                     ['CA', 'LA'],
                     ['ID', 'BOISE']]
    
    duplicates = []
    
    for item in list_of_lists:
        if list_of_lists.count(item) > 1 and item not in duplicates:
            duplicates.append(item)
    
    print(duplicates)