场景: a 为列表内嵌套列表如下
a = [["AA", "BB", "CC"], ["BB", "DD", "FF", ], ["AA", "FF"],
["EE", "DD", "BB"], ["WW", "XX", "CC", "TT", "RR"]]
目标:取出列表内的所有值,并要求去重
思路1:双重for循环,遍历内层列表里的值,引入第二个列表,追加值时候先判断当前值是否在第二个列表内,有则舍弃,无则追加, (太low太土代码太长)
思路2:列表推导式内双for循环,如下
import numpy as np
a = [["AA", "BB", "CC"], ["BB", "DD", "FF", ], ["AA", "FF"],
["EE", "DD", "BB"], ["WW", "XX", "CC", "TT", "RR"]]
b = np.unique([j for i in a for j in i])
print(b)
# 结果: ['AA' 'BB' 'CC' 'DD' 'EE' 'FF' 'RR' 'TT' 'WW' 'XX']