python - 将变量传递给类属性
问题描述
我有两个文件,其中一个是定义了类的 python (2.7) 文件。我知道如何创建实例以及类属性和实例属性之间的区别。我知道在创建任何实例时,您都会根据构造函数中定义的内容传递变量。但我想将另一个文件中的变量作为类属性而不是实例属性传递到我的 python 文件中。这可能吗?
文件 #1(Python 2.7):
class Controller:
"""
counter is my desired class attribute. But here, python
tells me GRID is not defined.
"""
counter = (GRID ** 2) # Gives a NameError.
def __init__(self, WIDTH, HEIGHT, GRID):
"""I'd like GRID to be a variable that's read from another file."""
self.WIDTH = WIDTH
self.HEIGHT = HEIGHT
self.GRID = GRID
文件 #2(保存所有常量和幻数的“主”文件):
WIDTH = 500
HEIGHT = 500
GRID = 4
controller = Controller(WIDTH, HEIGHT, GRID) # New Controller object.
当我尝试定义counter
为基于 variable 的公式时GRID
,我得到一个NameError: GRID is not defined
. 有没有一种方法可以定义类属性——counter
在这种情况下——根据变量?
显然我可以只写counter = 4 ** 2
,但我想将所有常量和幻数保存在一个文件中,所以我可以根据需要只在一个文件中更新它们。
解决方案
推荐阅读
- javascript - node stripe products list return empty
- javascript - 工厂函数中的“This”
- web-scraping - 网络从汤文件中抓取相关信息
- python - Django 模型字段包含奇怪的属性 _("private")
- reactjs - React Router - Route children 和 component props 有什么区别
- java - 如何将大型 JSON 字符串转换为 JSON 对象?
- flutter - 颤振溢出圆圈头像覆盖容器
- html - 如何使用 sed 将 CSS 样式文件内联到 HTML 文件?
- r - 从后验预测分布抽样(stan vs inla)
- html - 反应渲染问题