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_Match - Fatal编程技术网

在python中对列表重新排序

在python中对列表重新排序,python,list,match,Python,List,Match,在这里,我需要比较list1项目和list2项目,如果项目遗漏了,那么我希望在list1的遗漏项目索引处插入False 我的意见是 list1 = [1,2,3,4] list2 = [3,1,4] 例外输出为 result = [1, False, 3, 4] 我试过这个: result = [] for x in list1: for i in xrange(0,len(list2)): if set(x) == set(list2[i]):

在这里,我需要比较list1项目和list2项目,如果项目遗漏了,那么我希望在list1的遗漏项目索引处插入
False

我的意见是

list1 = [1,2,3,4]
list2 = [3,1,4]
例外输出为

result = [1, False, 3, 4]
我试过这个:

result = []
for x in list1:
    for i in xrange(0,len(list2)):
        if set(x) == set(list2[i]):
           result.append(x)
使用:

如果您不熟悉
列表理解
,可以使用循环解决方案:

result = []
for x in list1:
    if x in list2:
        result.append(x)
    else:
        result.append(False)

print(result)
[1, False, 3, 4]

在中使用非常简单:


这样做的目的是获取
list1
列表中的每个元素,并检查它是否位于
第二个列表
list2
中。如果是这样,返回项目<代码> i>代码>本身,如果不返回,代码> false .< /P>如果列表有重复的话怎么办?请不要对您的问题进行实质性的更改,使其现有的答案无效。请考虑创建一个新问题。在你的新问题中,你需要解释你的输入列表之间的关系,因为目前还不清楚为什么你会期望输出。你已经编辑了这个问题。
list2
中的
[1,2]
如何?或
[2,3]
或其中任何一项。我想你需要解释一下它是如何工作的,例如,列表是否需要展平、排序等等?Dinesh,请停止对这个问题进行重大编辑。如果你问了一个完全错误的问题或者需要问一个新问题,请使用页面顶部的“提问”按钮。如果有助于提供上下文,您可以链接到此问题。
result = []
for x in list1:
    if x in list2:
        result.append(x)
    else:
        result.append(False)

print(result)
[1, False, 3, 4]
>>> list1 = [1, 2, 3, 4]
>>> list2 = [3, 1, 4]
>>> res = [i if i in list2 else False for i in list1]
>>> print(res)
[1, False, 3, 4]