python3.5:在lis中搜索不同的值

2024-09-30 00:36:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个清单:

myList = [abc123, def456, ghi789, xyz999]

我需要根据允许值的“子列表”在myList中搜索特定值:

allowed = [abc123, xyz999]

编辑:我需要检查myList是否包含allowed中的值

我已经知道如何搜索列表中的一个特定子字符串,但我真的不知道如何对“子列表”执行相同的操作。你知道吗

事先谢谢你的帮助。你知道吗


Tags: 字符串编辑列表allowedabc123mylistdef456ghi789
3条回答

我不知道你想达到什么目的,但我想你是想看看你的列表中是否有允许的值。所以试试这个:

myList = ['abc123', 'def456', 'ghi789', 'xyz999']
allowed = ['abc123', 'xyz999']

for i in myList:
    if i in allowed:
        print("{0} in the list".format(i))

看完你的评论,问题有点模糊, 我用字典来存储allowed的值,并检查它们是否都在我的列表中

myList = ['abc123', 'def456', 'ghi789', 'xyz999']
allowed = {'abc123' : False, 'xyz999' : False}

for i in myList:
    if i in allowed:
        allowed[i]=True

print((all(value == True for value in allowed.values())))

您可以使用set.issubset

>>> set(allowed).issubset(myList)
True

或者,如果您的值不可散列,all理解:

>>> all(value in myList for value in allowed)
True
for value in myList:
    if value in allowed:
        #dosomething

相关问题 更多 >

    热门问题