我如何从 Python 列表中删除细节和重复单词?
How can i remove specifics and repeat words from Python List?
您好,我正在尝试从列表中删除一些项目和单词,希望您一切顺利。
ListA = ['', 'dulce_renaca', 'pastelerialuly', 'cons.bakery', 'kukkichile', 'panaderiasanjoaquin', 'ceciliabolocco\nVerified', '', 'coasthealthyfood', 'bajozeroalimentos', 'dulce_renaca', 'kukkichile']
我想消除所有像“”这样的空项和像“dulce_renaca”这样的重复词。并删除或拆分包含单词“\nVerified.
预期结果:
ListB = ['dulce_renaca', 'pastelerialuly', 'cons.bakery', 'kukkichile', 'panaderiasanjoaquin', 'coasthealthyfood', 'bajozeroalimentos']
请帮助我并教我怎么做。
非常感谢!
ListA = ['', 'dulce_renaca', 'pastelerialuly', 'cons.bakery', 'kukkichile', 'panaderiasanjoaquin',
'ceciliabolocco\nVerified', '', 'coasthealthyfood', 'bajozeroalimentos',
'dulce_renaca', 'kukkichile']
v = [list(n for n in x.split("\n")) if "\n" in x else x for x in list(set(filter(None,ListA)))]
d = []
for b in v:
fun = lambda x: d.extend(x) if len(x) < min([len(v) for v in list(set(filter(None,ListA)))]) else d.append(x)
fun(b)
Filter是过滤掉none的值,set是用来去除重复的。
然后我们使用 for 和 lambda 函数来展平列表。
d
Out[101]:
['dulce_renaca',
'coasthealthyfood',
'bajozeroalimentos',
'cons.bakery',
'kukkichile',
'pastelerialuly',
'panaderiasanjoaquin',
'ceciliabolocco',
'Verified']
输出...上面的代码和输出,如果你想拆分其中有“\n”的值...
如果您想删除该值
ListA = ['', 'dulce_renaca', 'pastelerialuly', 'cons.bakery', 'kukkichile', 'panaderiasanjoaquin',
'ceciliabolocco\nVerified', '', 'coasthealthyfood', 'bajozeroalimentos',
'dulce_renaca', 'kukkichile']
v = [x for x in list(set(filter(None,ListA))) if "\n" not in x]
上面的代码可以工作
v
Out[106]:
['dulce_renaca',
'coasthealthyfood',
'bajozeroalimentos',
'cons.bakery',
'kukkichile',
'pastelerialuly',
'panaderiasanjoaquin']
以上是输出....
您好,我正在尝试从列表中删除一些项目和单词,希望您一切顺利。
ListA = ['', 'dulce_renaca', 'pastelerialuly', 'cons.bakery', 'kukkichile', 'panaderiasanjoaquin', 'ceciliabolocco\nVerified', '', 'coasthealthyfood', 'bajozeroalimentos', 'dulce_renaca', 'kukkichile']
我想消除所有像“”这样的空项和像“dulce_renaca”这样的重复词。并删除或拆分包含单词“\nVerified.
预期结果:
ListB = ['dulce_renaca', 'pastelerialuly', 'cons.bakery', 'kukkichile', 'panaderiasanjoaquin', 'coasthealthyfood', 'bajozeroalimentos']
请帮助我并教我怎么做。 非常感谢!
ListA = ['', 'dulce_renaca', 'pastelerialuly', 'cons.bakery', 'kukkichile', 'panaderiasanjoaquin',
'ceciliabolocco\nVerified', '', 'coasthealthyfood', 'bajozeroalimentos',
'dulce_renaca', 'kukkichile']
v = [list(n for n in x.split("\n")) if "\n" in x else x for x in list(set(filter(None,ListA)))]
d = []
for b in v:
fun = lambda x: d.extend(x) if len(x) < min([len(v) for v in list(set(filter(None,ListA)))]) else d.append(x)
fun(b)
Filter是过滤掉none的值,set是用来去除重复的。 然后我们使用 for 和 lambda 函数来展平列表。
d
Out[101]:
['dulce_renaca',
'coasthealthyfood',
'bajozeroalimentos',
'cons.bakery',
'kukkichile',
'pastelerialuly',
'panaderiasanjoaquin',
'ceciliabolocco',
'Verified']
输出...上面的代码和输出,如果你想拆分其中有“\n”的值...
如果您想删除该值
ListA = ['', 'dulce_renaca', 'pastelerialuly', 'cons.bakery', 'kukkichile', 'panaderiasanjoaquin',
'ceciliabolocco\nVerified', '', 'coasthealthyfood', 'bajozeroalimentos',
'dulce_renaca', 'kukkichile']
v = [x for x in list(set(filter(None,ListA))) if "\n" not in x]
上面的代码可以工作
v
Out[106]:
['dulce_renaca',
'coasthealthyfood',
'bajozeroalimentos',
'cons.bakery',
'kukkichile',
'pastelerialuly',
'panaderiasanjoaquin']
以上是输出....