Python:如何从filemodule的函数中附加一个列表(包含在Main()程序中)?

2024-09-27 09:37:43 发布

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

我开始编写一个基于文本的游戏 调用文件模块中函数的主程序。你知道吗

在一种特殊情况下,调用文件模块和函数,函数(在模块中)应在Main()程序(全局变量)中附加一个列表。你知道吗

问题是它不能附加它。你知道吗

所以,更具体地说,在游戏中,玩家进入一个房间(房间A2),里面有一个物体(剑)。 玩家可以拿起它(我希望这个函数能把它从名为object\u room\u a2的列表中删除),然后把剑放在他的包里。 因此,包是Main()程序中的一个全局列表(称为object\u list)。你知道吗

请输入下面的代码,谢谢您的帮助!你知道吗

object_list = []

def main():
    print('stuff.. What do you want to do? (1) do this; (2) do that')
    choice = int(input('Choice --> '))

    if choice == 1 :
        RoomA2.room_a2()
    elif choice == 2 :
        RoomB1.room_b1()

def room_a2():
    object_room_a2 = ['sword']
    print('stuff.. What do you want to do? (1) do this; (2) do that')
    choix = int(input('choix --> '))

    if choix == 1:
        object_room_a2.remove('sword')
        object_list.append('sword')

    if choix == 2:
        RoomA1.room_a1()

Tags: 模块文件函数a2游戏列表ifobject
1条回答
网友
1楼 · 发布于 2024-09-27 09:37:43

问题是每次调用room_a2时,都会重新初始化object_room_a2,这样剑就会不断地重新出现。你知道吗

一般来说,这是一个非常复杂的方法来做你想做的事情。一个player对象和一个room对象的集合将产生更少的代码,但是我假设您是一个初学者,可能希望先让一些room以这种方式工作。你知道吗

相关问题 更多 >

    热门问题