我正在尝试理解下面这段代码的逻辑。有人可以帮我解决以下问题吗?
1]由于for
的返回值为check_cheese
,False
循环是否继续执行?据我所知,结果是True
或False
,return
命令会停止函数的执行。
2]仅当if check_cheese(cheese)
函数的返回参数为check_cheese()
时,True
语句是否返回乳酪变量?我在这里有点困惑,因为没有像==
或in
这样的检查,也没有任何其他指示仅在条件为True
时才返回起司的语句。
3)如果列表中不存在Gouda怎么办?是否会像for
循环中的每个条件都返回False
,并在结束时打印语句您称自己
感谢您能提供的任何帮助。
def check_cheese(cheese):
if cheese == "Gouda":
print("ooh we have that one")
return True
print(f"we don't have any {cheese}")
return False
def find_first_available_cheese():
for cheese in ['Emmental','Gouda']:
if check_cheese(cheese):
return cheese
print("and you call yourself a cheeseshop!")
find_first_available_cheese()
我正在尝试理解下面这段代码的逻辑。有人可以帮我解决以下问题吗? 1)for循环是否由于check_cheese返回False而继续执行?到目前为止...
return
语句的调用将始终中断外部循环/函数,即使它是return False
。您的情况是if
条件阻止调用return
语句1)是否由于返回,For循环继续执行?check_cheese是错误的吗?据我所知,要么结果为真或False,返回命令将停止执行函数