2024-03-28 10:33:55 发布
网友
我有一个对象Clock = pygame.time.Clock()。我想在一个模块中使用它,这样每当我导入模块时,模块就会使用程序中创建的对象。我该怎么做
Clock = pygame.time.Clock()
您可以创建另一个定义全局时钟的模块,并将其导入到您的程序和模块中。我前段时间试过,但这很尴尬,会导致各种各样的错误
我试着用不同的方法来做Importing variable names into class namespace和Reuse module with different scripts (code organization),但都是徒劳的
通常的方法是模块函数将参数传递给它们,这些参数包含设置模块所需的变量。有时将模块组织到类中是有意义的,因为当您创建一个类对象时,您将配置/全局变量设置到类中
像这样: 模块1.py
class funcs_that_use_clock: def __init__(self,clockconfig): self.clock=clockconfig def foo(self): print self.clock
然后yourprogram.py会:
from module1 import funcs_that_use_clock as F Clock = pygame.time.Clock() myfuncs=F(Clock) myfuncs.foo()
根据具体情况,您还可以拥有类/模块范围的变量,而无需创建实际对象
不,你不能,至少不能这样
您可以创建另一个定义全局时钟的模块,并将其导入到您的程序和模块中。我前段时间试过,但这很尴尬,会导致各种各样的错误
我试着用不同的方法来做Importing variable names into class namespace和Reuse module with different scripts (code organization),但都是徒劳的
通常的方法是模块函数将参数传递给它们,这些参数包含设置模块所需的变量。有时将模块组织到类中是有意义的,因为当您创建一个类对象时,您将配置/全局变量设置到类中
像这样: 模块1.py
然后yourprogram.py会:
根据具体情况,您还可以拥有类/模块范围的变量,而无需创建实际对象
相关问题 更多 >
编程相关推荐