检查变量是否在列表中

12 投票
3 回答
82042 浏览
提问于 2025-04-17 04:01

我刚接触Python,想知道有没有简单的方法可以检查一个值是否在列表中,类似于SQL中的WHERE子句。如果这个问题太基础了,我很抱歉。

MsUpdate.UpdateClassificationTitle in (
        'Critical Updates',
        'Feature Packs',
        'Security Updates',
        'Tools',
        'Update Rollups',
        'Updates',
        )

也就是说,我想写:

if MsUpdate.UpdateClassificationTitle in (
        'Critical Updates',
        'Feature Packs',
        'Security Updates',
        'Tools',
        'Update Rollups',
        'Updates'
        ):  
    then_do_something()

3 个回答

4

确保你使用的是“in”,而不是“is”,比如说:

username = ["Bob", "Kyle"]

name = "Kyle"

if name in username:
    print("step 1")
    login = 1
else:
    print("Invalid User")
15

这很简单:

sample = ['one', 'two', 'three', 'four']

if 'four' in sample:
   print True
16

看起来挺简洁的,但如果你要用它不止一次,最好给这个元组起个名字:

titles = ('Critical Updates',
    'Feature Packs',
    'Security Updates',
    'Tools',
    'Update Rollups',
    'Updates')

if MsUpdate.UpdateClassificationTitle in titles:  
    do_something_with_update(MsUpdate)

元组用圆括号括起来。如果你想要一个列表,就把它改成方括号。或者你可以用集合,它查找的速度更快。

撰写回答