如何修复程序在输入状态后立即关闭

2024-05-18 23:28:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用python3做一个简单的文本游戏,我试图做一个input语句,但是当我回答它时,程序关闭了。我怎样才能解决这个问题?你知道吗

我试过在谷歌上搜索,但我只看到“程序打开后直接关闭”。你知道吗

def startgame():
    print("####################")
    ign = input("Type a name. ")
    print("####################")
    namedecision = input("You have picked " + ign + ".\nAre you sure you want\nto keep this name? (Y/N) ")
    if namedecision == ['y','Y']:
        # put game func
        print("####################")
    if namedecision == ['n', 'N']:
        ign = input("Type a name. ")
        namedecision = input("You have picked " + ign + ".")
        print("####################")
        # game func

startgame()

我希望如果我键入Y或N,它将执行正确的函数。你知道吗


Tags: name程序yougameinputifhavetype
1条回答
网友
1楼 · 发布于 2024-05-18 23:28:44

您的if语句总是返回false,因为您的输入总是一个字符串,并且您将它与一个列表进行比较。将==更改为in,以检查列表中是否有字符串(或任何其他类型)。你知道吗

更正代码:

def startgame():
    print("####################")
    ign = input("Type a name. ")
    print("####################")
    namedecision = input("You have picked " + ign + ".\nAre you sure you want\nto keep this name? (Y/N) ")
    if nameDecision in ['y','Y']:
        # put game func
        print("####################")
    elif nameDecision in ['n', 'N']:
        ign = input("Type a name. ")
        namedecision = input("You have picked " + ign + ".")
        print("####################")

startgame()

相关问题 更多 >

    热门问题