Python 为什么在运行这些代码后输出(True,3)?

Python 为什么在运行这些代码后输出(True,3)?,python,Python,我是python编程的新手。有人能帮我理解下面每行代码的作用吗。我不明白怎么回事,3是我运行后的输出 def do_Search(dlist, item): pos = 0 found = False while pos < len(dlist) and not found: if dlist[pos] == item: found = True else: pos = pos + 1

我是python编程的新手。有人能帮我理解下面每行代码的作用吗。我不明白怎么回事,3是我运行后的输出

def do_Search(dlist, item):
    pos = 0
    found = False
    while pos < len(dlist) and not found:
        if dlist[pos] == item:
            found = True
        else:
            pos = pos + 1
    return found, pos
print (do_Search([11,23,58,31,56,77,43,12,65,19],31))

此函数用于在列表数据列表中执行搜索任务。 while函数意味着算法将继续,直到pos等于列表的长度。检查列表中的每个元素。and not found条件检查找到的变量是否仍然为False

当列表的元素是要查找的项时,found=True停止while循环。 否则,pos将递增为pos=pos+1


函数返回找到的布尔值和结果在列表中的位置。

因此,首先有两个辅助变量:

pos,返回函数项参数的位置, found,它将返回是否找到该项。 然后,从第4行开始,当当前位置pos小于列表的长度时,您仍然在列表的范围内,并且还没有找到该项,则继续

如果找到项目dlist[pos]==item,则将find更新为true,因此跳出while循环并返回


因此,您有一个函数,它接收一个列表``和一个数字`,并在列表中搜索该项,然后返回该项是否为found变量,如果已找到,则返回其位置Pos.

您对哪个部分有疑问?它定义了一个函数。然后调用函数并打印结果。您应该考虑阅读有关函数的Python文档,而循环和条件,如果其他的话…@ Jalasbe您在错误的帖子上发表评论: