mih*_*asa 20 python list unique set
我想创建一个列表(或集)中出现在python列表中的所有唯一值.我有这样的事情:
aList=[['a','b'], ['a', 'b','c'], ['a']]
Run Code Online (Sandbox Code Playgroud)
我想要以下内容:
unique_values=['a','b','c']
Run Code Online (Sandbox Code Playgroud)
我知道对于一个字符串列表你可以使用set(aList),但我无法想象如何在列表列表中解决这个问题,因为set(aList)会得到错误信息
unhashable type: 'list'
Run Code Online (Sandbox Code Playgroud)
我怎么解决呢?
dla*_*ask 30
array = [['a','b'], ['a', 'b','c'], ['a']]
result = set(x for l in array for x in l)
Run Code Online (Sandbox Code Playgroud)
Tan*_*lam 14
您可以使用itertools's chain来展平您的阵列然后调用set它:
from itertools import chain
array = [['a','b'], ['a', 'b','c'], ['a']]
print set(chain(*array))
Run Code Online (Sandbox Code Playgroud)
如果您期待一个list对象:
print list(set(chain(*array)))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21653 次 |
| 最近记录: |