如何创建一个块,让用户只能在Python中输入正整数

2024-04-25 06:31:50 发布

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

我开始学习python,在一个练习中,它要求创建一个只接受正整数的程序

这是我写的:

while True:
    number = input('Type an integer positive number: ')
    try:
        number = int(number)
        break
    except ValueError:
        print ('Value not accepted')
        break

如何在我的区块中添加>;0支票


Tags: 程序antruenumberinputtypeintegerint
3条回答

您可以使用raise抛出异常

while True:
    number = input('Type an integer positive number: ')
    try:
        number = int(number)
        if number < 0 :
            raise ValueError
    except ValueError:
        print ('Value not accepted')
        break

输出

Type an integer positive number: 3
Type an integer positive number: 4
Type an integer positive number: -4
Value not accepted

我猜您希望保持异常处理的原样,因此我的建议是:

while True:
    number = input('Type an integer positive number: ')
    try:
        number = int(number)
        if number <= 0:
            raise ValueError('Negative number or zero entered.')
        break
    except ValueError as ve:
        print(ve)
        break

我希望这能帮助您完成任务,并让您继续享受学习Python的乐趣。我对此也不熟悉,但Python非常有趣!:)

使用continus让用户再次输入

while True:
    number = input('Type an integer positive number: ')
    try:
        number = int(number)
        if number < 0:
            continue
        else:
            break
    except ValueError:
        print('Value not accepted')
        break

相关问题 更多 >