如何以 HHMM 格式获取 24 小时制的用户输入? (不导入任何模块)

How to take a user input of 24 hour time in HHMM format? (without importing any modules)

我需要在不导入任何模块的情况下接受 0000 到 2359 之间的用户输入时间。 我目前只有一个 int 输入:

fillTime = "X"
while fillTime == "X":
    try:
        fillTime = int(input("Enter the time (0000-2359): "))
        if fillTime < 0 or fillTime > 2359:
                print("Error! Please enter a valid time!")
                fillTime = "X"
        else:
            break
    except:
        print("An unknown error occurred!")

然而,这并不能验证时间是否无效(例如 1299 等)。如有任何帮助,我们将不胜感激!

编辑 修复了我的代码中的一个错误,第一行是错误的

您可以使用模运算符来验证最后两位数。此外,您的循环不应检查“X”。只需使用 while Truebreak:

while True:
    try:
        fillTime = int(input("Enter the time (0000-2359): "))
        if not (0 <= fillTime <= 2359) or fillTime % 100 > 59:
            print("Error! Please enter a valid time!")
        else:
            break
    except:
        print("An unknown error occurred!")