Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python比较两个列表,然后删除重复字符并将结果放入新列表_Python_List - Fatal编程技术网

Python比较两个列表,然后删除重复字符并将结果放入新列表

Python比较两个列表,然后删除重复字符并将结果放入新列表,python,list,Python,List,这个应该不会太难,但它给我带来了麻烦: 假设我有两个列表: list1 = ['the sky is blue', 'I am happy', 'Where is the car', 'lets eat here'] list2 = ['the','', 'Where', 'lets'] 我试图做的是比较列表1和列表2,如果列表2的内容与列表1中的任何内容匹配,这些字符将从列表的成员中删除 对于每一个新成员,我希望它被添加到一个新的列表,目前将是空的 list3 = [] 清单1可以保持原样

这个应该不会太难,但它给我带来了麻烦:

假设我有两个列表:

list1 = ['the sky is blue', 'I am happy', 'Where is the car', 'lets eat here']
list2 = ['the','', 'Where', 'lets']
我试图做的是比较列表1和列表2,如果列表2的内容与列表1中的任何内容匹配,这些字符将从列表的成员中删除

对于每一个新成员,我希望它被添加到一个新的列表,目前将是空的

list3 = []
清单1可以保持原样,但重要的是清单3应如下所示:

list3 = ['sky is blue', 'I am happy', 'is the car', 'eat here']
请注意,列表3中的第一个单词被删除,因为在比较列表1和列表2时,该单词匹配。希望这是有意义的

为了这里的笑声,我尝试了

list1 =  ['the sky is blue', 'I am happy', 'Where is the car', 'lets eat here']
list2 = ['the','', 'Where', 'lets']
list3 = []

for w in list2:
if w in list1:
    addthis = list1.remove(w)
    list3.append(addthis)

谢谢

在列表理解中使用
zip
来实现这一点<代码>删除之后剩余的空格

list1 = ['the sky is blue', 'I am happy', 'Where is the car', 'lets eat here']
list2 = ['the','', 'Where', 'lets']

list3 = [x.replace(y,"").strip() for x,y in zip(list1,list2)]

print(list3)
结果:

['sky is blue', 'I am happy', 'is the car', 'eat here']

为了明确起见,您只想对相应的列表项执行删除操作,而不是对
list2
中的所有项执行删除操作,对
list1
中的每个项执行删除操作,对吗?看起来您想让我们为您编写一些代码。虽然许多用户愿意为陷入困境的程序员编写代码,但他们通常只在海报已经试图自己解决问题时才提供帮助。演示这项工作的一个好方法是包括您迄今为止编写的代码、示例输入(如果有)、预期输出和实际获得的输出(输出、回溯等)。你提供的细节越多,你可能得到的答案就越多。检查和。抱歉,我认为我的尝试是如此错误,他们甚至没有理由写它们down@TigerhawkT3这并不完全相同,OP似乎需要删除相应的子字符串,而不是所有项的相同子字符串。“但距离足够近了。”蒂格霍克特3同意。请注意,我没有重新开始这个问题。你回答了下面的问题。谢谢,我会试试看。我要学这个拉链!你就是那个人!快速提问,为什么要在替换方法中添加“”,看起来它只是一个占位符之类的,因为我刚取出“”,程序因为需要两个参数而崩溃。@Jean另一种方法:@Kevin-
是一个空字符串。请阅读有关这些功能的文档,因为本网站不是教程服务。