循环以及如何检查输入是否是一个麻木

2024-09-30 02:26:08 发布

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

所以我对python和一般的编码都是新手,在使用循环方面我有一些困难。 下面是以下代码(打印的是法语,但我想不需要翻译)

n = input ("Saissisez le nombre totale de bonnes notes obtenues")
n = int(n)
if n > 0:
    a = n+1
    b = n*a
    c = b/2
    print("Vous avez accumulez au total la somme de :", c, "€")
    print("Bien joué :)")
    input()

else:
    print("Vous n'avez pas rentré de nombre entiers correctes. Veuillez réessayer.")
    n = input ("Saissisez le nombre totale de bonnes notes obtenues")

所以我要做的是为“else”创建一个循环,以便再次提出问题(输入),直到选择了一个优于0的数字。 如果我键入一个字母而不是一个数字时不会“出错”,那也很酷。在

提前谢谢!(为这个愚蠢的问题道歉) 顺便说一下,输入“if”是为了避免窗口立即关闭。在


Tags: leinputifde数字elsenotesprint
2条回答

要确保用户提供大于0的整数:

is_integer = False
n = ''
while not is_integer:
    n = input("Saissisez le nombre totale de bonnes notes obtenues")

    if type(n) == int and n > 0:
        is_integer = True
    else:
        print('Not an integer greater than 0')

最好的办法是将整个过程定义为一个函数并让它自己调用。在

def myProcedure():
    n = input('Give me a number')
    ...
    if repeat_condition:
        myProcedure()
    else:
        finish up

至于数字错误,请使用try

^{pr2}$

相关问题 更多 >

    热门问题