首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Loop in Loop -执行错误检查

Loop in Loop -执行错误检查
EN

Stack Overflow用户
提问于 2018-03-03 11:30:24
回答 2查看 26关注 0票数 0

代码检查用户ID (id_usager)。如果它没有检出,它会将else作为错误捕获来执行。如果它确实签出了,它会调用其他函数并打印("Pour la personne"etc)。话虽如此,我希望我的程序在之后继续运行到autreRecommandation上,然而,就目前而言,它在前面提到的打印之后退出。

代码语言:javascript
复制
while True:
    id_check = True
    while id_check:
        id_usager = input("Entrer l'ID de l'usager pour lequel vous voulez une recommandation (entre 0 et {}): ".format(n - 1))

        if id_usager.isdigit():
            if int(id_usager) in range(n):
                id_usager = int(id_usager)
                calculer_scores_similarite(reseau)
                print("Pour la personne", id_usager, ", nous recommandons l'ami", recommander(id_usager, reseau, matrice_similarite), ".")
                return id_check == True
            else:
                print("Erreur: l'usager doit être un nombre entier entre ", 0, "et", n - 1, "inclusivement.\n")

        else:
            print("Erreur: l'usager doit être un nombre entier entre ", 0, "et", n - 1, "inclusivement.\n")

    autreRecommandation = input("Voulez-vous une autre recommandation (oui/non)?")
    if autreRecommandation.lower() == "oui":
        return True
    else:
        print("Merci d'avoir utiliser le programme de recommandation d'amis.")
        break
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-03-03 12:11:52

return id_check == True语句将控制权返回给函数的调用者。相反,您可以使用break语句退出内部while循环,然后控制将返回到外部while循环,并如预期的那样转到autreRecommandation

代码可以更像这样

代码语言:javascript
复制
calculer_scores_similarite(reseau)
print("Pour la personne", id_usager, ", nous recommandons l'ami",recommander(id_usager, reseau, matrice_similarite), ".")
id_check == True
break
票数 0
EN

Stack Overflow用户

发布于 2018-03-03 11:32:38

你试过关键词continue吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49080339

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档