python - 如果不在列表中

9 浏览
0 Comments

python - 如果不在列表中

我有两个列表:

mylist = ['total','age','gender','region','sex']
checklist = ['total','civic']

我需要处理一些我继承的代码,代码如下:

for item in mylist:
    if item in checklist:
        做一些操作:

我如何使用上述代码告诉我'civic'不在mylist中

这本来是理想的做法,但我不能使用它,不要问我为什么。

for item in checklist:
    if item not in mylist:
        print item

输出结果:

civic

0
0 Comments

Python中的"if not in list"问题的出现是由于需要从一个列表中筛选出不在另一个列表中的元素。下面是解决这个问题的代码示例:

for item in [x for x in checklist if x not in mylist]:
    print (item)

在上述代码中,我们使用了列表推导式来生成一个新的列表,该列表包含所有在`checklist`中但不在`mylist`中的元素。然后,我们使用`for`循环遍历这个新列表,并打印每个元素。这样就能实现从`checklist`中筛选出不在`mylist`中的元素。

这种解决方法利用了Python的列表推导式和`for`循环的特性,使得代码简洁高效。通过这种方式,我们可以很方便地处理类似的问题,筛选出满足特定条件的元素。

0
0 Comments

在Python中,当我们需要检查一个元素是否不在一个列表中时,我们可以使用`not in`关键字。然而,有时候在代码中使用`if not item in mylist`或者`if item not in mylist`会导致问题。

原因:

问题的出现是因为在Python中,`not in`操作符的优先级高于`if`语句。这意味着`if not item in mylist`实际上被解释为`if (not item) in mylist`,而不是我们预期的`if item not in mylist`。

解决方法:

为了避免这个问题,我们可以使用括号来明确指定`not in`操作的执行顺序。以下是正确的写法:

if not (item in mylist)

或者

if (not item) in mylist

另外,更推荐的语法是使用`not in`操作符,即`if item not in mylist`。

在Python中,当我们需要检查一个元素是否不在一个列表中时,我们应该使用`not in`操作符,并注意优先级问题。如果出现问题,我们可以使用括号来明确指定操作的执行顺序,或者直接使用`if item not in mylist`的更推荐的语法。

0
0 Comments

问题原因:代码中使用了"if not in"的语法,但是出现了错误。该语法是用来判断某个元素是否不在列表中,如果不在则执行相应的操作。

解决方法:

可以尝试使用以下语法:

    if not item in mylist :

这种写法在逻辑上更加合理,并且能够正常工作。感谢Will的建议,不确定为什么这个解决方法在底部,我们应该将其提到前面。

0