输入布尔值 (python)

Input for a bool value (python)

我正在 Python 中制作一个 True/False 测试程序。如何提示用户输入布尔值,将此值存储在变量中,然后在 if 或 else 语句中使用它?

你可以使用这个:

import ast

user_input = ast.literal_eval(input('Enter True or False:'))
print(user_input, type(user_input))

如果您输入“True”或“False”,它将分别计算为 TrueFalse

如果您想更进一步,考虑到用户可能会输入与 True 和 False 截然不同的内容,因此您可以使用以下逻辑来处理它:

import ast

try:
    user_input = ast.literal_eval(input('Enter True or False:'))
except Exception:
    print('You did not enter True/False.')
else:
    if not isinstance(user_input, bool):
        print('You did not enter True/False.')
    else:
        if user_input:
            print('You enter True')
        else:
            print('You enter False')

接受一个普通的字符串输入。 bool(input()) 不行。

boolean = input('Enter bool: ')
if boolean == 'True':
    pass
elif boolean == 'False':
    pass