【问题标题】:Extract unique string values from a list within a list [duplicate]从列表中的列表中提取唯一的字符串值[重复]
【发布时间】:2021-06-18 14:33:46
【问题描述】:

所以我有一个包含一堆电影标题的 .csv 文件,其中一列是 Netflix 上的列表,它是一个列表,所以它有多个列表,它看起来像下面的电子表格:

我已经设法提取了我需要的各个列,所以现在我的主要问题是如何简化流派列表以便不添加重复。

我有以下代码:

enter code ef getUniqueGenres(genrelist):
uniqueGenres = []
for titles in genrelist:
    for listing in titles
        if not listing in uniqueGenres:
            uniqueGenres.append(listing)
return uniqueGenreshere

我希望代码能够遍历每个标题的每个列表,看看它是否是一个独特的类型。如果是,它将存储它,否则它只是忽略它。

澄清: listed_in 数据列是一个列表,其中每个索引都是它自己的列表。因此,唯一值必须考虑到所有这些。我试着做这样的事情:

uniqueGenres = []
for titles in netflixgenre:
    for listing in titles:
        if not listing in uniqueGenres:
            uniqueGenres.append(listing)

但这也没有给我想要的输出

【问题讨论】:

    标签: python list unique-values


    【解决方案1】:

    这实际上是来自herehere 的重复问题。尽管如此,普遍共识与Shaid's answer相同:

    只是投射到一个集合并返回到一个列表是最简单的方法。这是可行的,因为集合中的所有项目都必须是唯一的,否则它们不会被添加。

    unique_list = list(set(list)).sort()
    

    【讨论】:

      【解决方案2】:

      您只需使用 set 即可完成。这是一个例子:

      mylist = ['a', 'b', 'a', 'a', 'c', 'd', 'e']
      unique_list = list(set(mylist))
      

      列表中的列表。

      import itertools
      mylist = [['a', 'b', 'a', 'a', 'c', 'd', 'e'], ['c','a','d']]
      // combine multiple list to single list using itertools
      final_list = list(itertools.chain.from_iterable(mylist))
      unique_list = list(set(final_list))
      

      【讨论】:

      • 我试过了,但是没有用。它只是打印出了我拥有的所有数据。我的listen_in 集是一个列表,每个索引都是它自己的列表,所以我想知道如何获取列表中每个列表的唯一值
      • 你能显示列表示例吗?我的意思是它的样子。
      • i.imgur.com/8eShIxf.png 这是当我直接打印我提取的包含列表的列时命令提示符上显示的输出
      • 我已经编辑了我的答案。检查。
      • 当我这样做时,它现在将单词分解为字符,因此每个索引现在都是一个字母而不是一个单词
      猜你喜欢
      • 2021-07-16
      • 2017-05-22
      • 2013-06-12
      • 2012-10-05
      • 2012-03-11
      • 2019-04-22
      • 1970-01-01
      • 1970-01-01
      • 2018-10-09
      相关资源
      最近更新 更多