2013-06-18 65 views
0

今天晚上这个和第二个问题很新颖,但我正在研究一个基于文本的冒险游戏。在整个过程中,我使用某些命令的功能,并且有不同的阶段,但我需要在整个游戏中提供一个功能。 “帮助”命令。我只能想到这样做的一种方法,如果elif语句中有一行说,就可以将其添加到每一个。Python,全球可访问的函数

if option == 'help': 
    help() 

还需要一种方式来显示库存同样的方式,这将是一个字典

,但如果有人知道一个我喜欢一个更简单的方法。

+2

面向对象的解救。 –

+0

可能应该查看[modeless](http://en.wikipedia.org/wiki/Mode_%28computer_interface%29)解析器,并根据当前位置以不同的方式应用结果。如果你想写一个文本冒险游戏,看看[Inform](http://en.wikipedia.org/wiki/Inform),它更简单。 – Aya

回答

1

通常情况下,你会在类似的文件中放入类似的东西,并在需要时导入它。这是你的项目目录结构可能如下:

# /home/your_user_name/PROJECT_DIR 
# PROJECT_DIR/setup.py 
# PROJECT_DIR/README.md 
# PROJECT_DIR/your_app 
# PROJECT_DIR/your_app/__init__.py # mark this folder as a python package named your_app 
# PROJECT_DIR/your_app/main.py # your main codes 
# PROJECT_DIR/your_app/utils.py # put stuff like help in here 

所以在utils.py:

def help(): 
    ret = "calculating stuff to return" 
    return ret 

而且在main.py:

from your_app import utils 
def run(): 
    if option == 'help': 
     utils.help() 
if __name__ == "__main__": 
    run() 

希望帮助!