【问题标题】:unique elements in python listpython列表中的唯一元素
【发布时间】:2018-09-12 20:09:46
【问题描述】:

我有一个清单

a = ['a', 'b', 'c' ,'ab','d','bc','b','c','d']

result = ['a','b','c','d'] (desired output)

result = ['a','b','c','d','ab','bc' ] (my output using set())

如何比较子字符串来获得唯一列表

【问题讨论】:

  • 为什么d 不在您想要的输出中?
  • 错误 - 添加d

标签: string python-3.x arraylist substring


【解决方案1】:

IIUC,您想要列表中所有字符的集合a(尽管这与您想要的输出不匹配)。如果是这种情况,请使用:

set(''.join(a))

这会将您的列表连接成一个长字符串,然后将其拆分为一个字符列表,然后应用 set 来获取:

{'a', 'b', 'c', 'd'}

转换回列表:

>>> list(set(''.join(a)))
['a', 'b', 'c', 'd']

【讨论】:

  • list(set(''.join(a))) 第二个list 调用是多余的。
  • 我想比较子串。如果'bc'中的'b',我不想要那个元素
【解决方案2】:

与 Sacul 类似,您可以使用 list comprehension 来执行此操作

list(set([letter for entry in a for letter in entry]))

这将适用于字符串或列表列表。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-04-12
    • 1970-01-01
    • 2010-11-16
    • 1970-01-01
    • 2011-05-23
    • 2023-03-31
    • 2022-12-03
    相关资源
    最近更新 更多