gpt4 book ai didi

python - 从另一个文件导入类变量Python

转载 作者:行者123 更新时间:2023-12-01 00:25:08 25 4
gpt4 key购买 nike

我正在尝试从 Python 3 中的另一个文件导入特定的类变量。但是,我不确定如何正确执行此操作,甚至不知道如何使其正常工作。

文件“gui.py”

class Gui:
def __init__(self):
self.board = [0]

def run(self):
self.board = [2]

if __name__ == '__main__':
Gui().run()

在下面的文件 eval.py 中,我想使用 gui.py 中更新的变量 self.board = [2]。我尝试了下面的代码示例,但在两种情况下都收到错误“AttributeError:类型对象'Gui'没有属性'board'”。

文件“eval.py”

from gui import Gui

board = Gui.board
board = __import__('gui').Gui.board

我还尝试从 gui.py 中删除 name=main ,但正如预期的那样,它只使 gui.py 运行其代码,然后我得到了与之前相同的错误。

如何以最好、最有效的方式从 eval.py 中的 gui.py 访问 Gui.run() 中的变量 self.board?

最佳答案

试试这个:

测试.py

class Gui:
def __init__(self):
self.board = [0]

def run(self):
self.board = [2]

test1.py

from test import Gui

boardObj = Gui()
boardObj.run()

print(boardObj.board)

运行test.py,您将能够从test1.py文件访问board,并将其修改为[2]。

类变量示例:

测试.py

class Gui:
board = [5]
def __init__(self):
self.board = [0]
def run(self):
self.board = [2]

test1.py

from test import Gui

print(Gui.board)

obj = Gui()
obj.run()

print(obj.board)

Gui.board(类变量)将为您提供 ans [5],obj.board(实例变量)将为您提供 ans [2]

关于python - 从另一个文件导入类变量Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58638515/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com