首页 > 解决方案 > 返回可以关闭循环吗?(蟒蛇/django)

问题描述

在 python 上是否return关闭循环?我之所以这么问,是因为我编写了一个代码,它将在列表中搜索我的某个人,如果知道那个人,它将返回我的年龄,否则它会告诉我“找不到人”。如果这个人在数组的第一位,如果找到它,但如果它在第二位,他不为什么?

def lerDoBanco(name):
lista_names = [
    {'name': 'Joaquim', 'age': 20},
    {'name': 'João', 'age': 25},
    {'name': 'Ana', 'age': 27}
]

for person in lista_names:
    if person['name'] == name:
        return person
    else:
        return {'name': 'Person not found', 'age': 0}

def fname(request, name):
    result = lerDoBanco(name)
    if result['age'] > 0:
        return HttpResponse('The person was found, has ' + str(result['age']) + ' years old')
    else:
        return HttpResponse('Person not found')

我问这个是因为如果我评论 else 语句,它会正确显示数组中的所有人。

标签: pythondjango

解决方案


当您调用return运算符时,它将终止当前函数执行并返回值。因此,如果您将return在循环中使用,return将终止循环和函数并返回一些值。


推荐阅读