如何在Python中实现整数转换的输入验证循环?

问题描述 投票:0回答:1

我正在做一个 Python 练习,使用 bin()、oct() 和 hex() 转换数字。

我想实现输入验证以确保用户输入有效的整数。

当前代码:

pythonCopynum = int(input('Inform a number to convert: '))

如果输入不是有效整数,则此代码会以

ValueError
中断。

我想实现一个循环,继续提示用户直到输入有效的整数,而不抛出异常。 期望的行为:

提示用户输入 如果输入的不是有效整数,则显示错误信息并再次提示 重复直到输入有效的整数

如何修改代码来实现此输入验证循环?

附加信息:

  • 使用Python 3。
  • 更喜欢不依赖外部库的解决方案

任何有关有效实施这一点的建议将不胜感激。

python-3.x pycharm
1个回答
0
投票

你需要循环直到你不会得到

ValueError
:

def get_valid_integer():
    while True:
        try:
            user_input = input('Inform a number to convert: ')
            num = int(user_input)
            return num
        except ValueError:
            print("Invalid input. Please enter a valid integer.")

# Call the Function
num = get_valid_integer()
© www.soinside.com 2019 - 2024. All rights reserved.