Skip to main content
 首页 » 编程设计

python之将用户输入转换为小写之文本冒险游戏之python 3

2025年05月04日23exmyth

对于另一个简单的问题,我深表歉意,但我真的被卡住了……我正在尝试添加一个 .lower() 方法来将任何用户输入(无论是大写、小写还是组合)转换为小写。

我就是想不通到底在哪里添加 .lower()?

这是游戏的主要功能:

def main(): 
 
for turn in range(20, 0, -1): 
    print("") 
    describe() 
    cmd = input("Enter your command " + str(turn) + "> ") 
    if cmd == "quit": 
        print("You gave in so easily :-(") 
        break 
    elif cmd.startswith("go "): 
        where = cmd[3:] 
        move_cmd(where) 
        if state == "dead": 
            print("you are dead") 
        elif state == "outside": 
            print("You jimmy the door open with the crowbar and escape to your freedom!") 
            break 
    elif cmd.startswith("take "): 
        obj_name = cmd[5:] 
        take_cmd(obj_name) 
    else: 
        print("I do not understand '" + cmd + "'.  Try go/take/quit") 
print("Game over") 
 
 
if __name__ == "__main__": 
    main() 

所以我认为这也是添加它的代码行......但它不起作用......

cmd = input("Enter your command " + str(turn) + "> ").lower()  

这行不通...我是否需要添加另一个循环或以某种方式更改代码行?

提前谢谢你。

请您参考如下方法:

任何字符串都是 str 类的一个实例。因此,您可以在任何字符串上使用 .lower()、.upper() 等。 input() 返回的类型是一个 str。所以你想要这个,就在你的 if 语句之上,以检查命令是否退出开始: cmd = cmd.lower()

您可能想查看 python 的 tutorial或 standard library reference因此您可以查看示例并了解标准库和类型(如 str!)必须提供的内容。