gpt4 book ai didi

python - 在 python 的列表列表中查找唯一的单词

转载 作者:行者123 更新时间:2023-12-05 08:24:53 25 4
gpt4 key购买 nike

我有一个列表列表,我想使用 for 循环对其进行迭代,并创建一个仅包含唯一单词的新列表。这类似于 question asked previously ,但对于列表中的列表

,我无法找到适用于我的解决方案

例如嵌套列表如下:

ListofList = [['is', 'and', 'is'], ['so', 'he', 'his'], ['his', 'run']],

所需的输出将是一个列表:

List_Unique = [['is','and','so','he','his','run']]


我尝试了以下两种代码变体,但它们的输出都是重复列表:

unique_redundant = [] 
for i in redundant_search:
redundant_i = [j for j in i if not i in unique_redundant]
unique_redundant.append(redundant_i)
unique_redundant


unique_redundant = []
for list in redundant_search:
for j in list:
redundant_j = [i for i in j if not i in unique_redundant]
unique_redundant.append(length_j)
unique_redundant

为上述两个(不正确的)变体给出的示例输出

(我在我的真实数据集上运行了代码,它在同一对单词的列表中给出了重复列表,尽管这不是实际的两个单词,只是一个例子):

List_Unique = [['is','and'],['is','and'],['is','and']]

最佳答案

我建议使用 set() class union()这样:

ListofList = [['is', 'and', 'is'], ['so', 'he', 'his'], ['his', 'run']]

set().union(*ListofList)
# => {'run', 'and', 'so', 'is', 'his', 'he'}

解释

它的工作原理如下:

test_set = set().union([1])
print(test_set)
# => {1}

列表前的星号运算符 (*ListofList) 解包列表:

lst = [[1], [2], [3]]
print(lst) #=> [[1], [2], [3]]
print(*lst) #=> [1] [2] [3]

关于python - 在 python 的列表列表中查找唯一的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70270242/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com