Skip to main content
 首页 » 编程设计

python之使用 "or"的基本 Python If 语句

2025年05月04日39lonelyxmas

我正在关注一个学习 python 的初学者程序。我正在努力寻找一种更好的方法来使用具有多种可能性的“if”语句。我正在编写一个基于文本的基本游戏,用户可以在其中选择三个不同的难度级别:简单、中等、困难。我只是想编写接受 1、2 或 3 的代码来告诉程序运行哪个级别。我想确保用户输入是这些选项之一,而不是“4”或“一个”。

下面是我写的相关代码:

selected_level = 0 
selected_level = raw_input("\n Please select a level by entering 1, 2, or 3 : ") 
print selected_level 
if selected_level == 1 or selected_level == 2 or selected_level == 3: 
    print "Pass" 
else: 
    print "Fail" 
break 

我现在要做的就是测试“if”语句是否有效。但是,无论我输入什么输入,它都会打印输入,然后打印“Fail”,这告诉我它永远不会进入“if”语句的第一部分。

我已经尝试使用输入 1、2、3、4、1 等对此进行测试,它总是跳到“else”语句。有没有更好的方法来编写具有多个或值的“if”语句?

请您参考如下方法:

您的问题是 raw_input 返回一个字符串,但 if 语句正在与整数进行比较。

“1”不等于 1。

尝试检查 if selected_level == "1"... "2"... etc. 它应该可以工作。

我会比较字符串而不是将输入转换为 int,因为如果用户键入意外的内容,程序会崩溃。

还有一个更简洁的检查:

if selected_level in ("1", "2", "3"): 
    print "Pass"