如何在读取函数代码之前从输入运行函数?

我正在编写一个类似于 mastermind 的游戏,我想要一个简单或困难的版本。我不确定如何执行此操作,因为我需要在实际游戏开始之前提出问题,但随后出现错误,因为该函数在分配之前就被调用以运行。


def difficulty():

    difficulty = input("would you like to the easy or hard version?")

    if difficulty == ("easy"):

        easy()

    elif difficulty == ("hard"):

        hard()

difficulty()

这是开始,然后是具有更难游戏代码然后更简单游戏代码的功能。我试图运行简单的,如果他们要求简单,反之亦然,但简单 () 和困难 () 不运行代码,因为它尚未分配。我认为这是因为python从上到下读取代码并在发现错误但不确定时停止。


我以前从未使用过这个,所以如果事情不清楚或者我做错了什么,我深表歉意。


我对python也比较陌生。


如果有人可以帮助我,我会非常感激。


长风秋雁
浏览 193回答 1
1回答

扬帆大鱼

在识别模块内的函数时,Python 非常聪明。例如你可以这样做:def x():    y()def y():    print("Y")x()它会正确执行。您对从上到下执行的代码块是正确的,并且这些函数的定义也将从顶部到按钮构造,但在之后执行。我在您的代码中看到了一些问题。你这样做,difficulty = input("would you like to the easy or hard version?")但同时你有一个名为def difficulty. 那里有冲突,尝试重命名该变量。你不需要做("easy"),它是矫枉过正,你可以直接比较"easy"。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python