python - Python 中在另一个类中访问 self 的最佳实践
问题描述
例如,如果我有 2 个类Tree
,并且Node
在 中的add_node
方法中Tree
,我可以将self
引用添加Tree
到Node
对象中,如下所示。Tree
这样做是为了方便在对象中仅使用键访问其他部分时Node
(即只能使用键)。但是,我想知道这是否被认为是最佳实践,因为 IDE (PyCharm) 也会尖叫Unresolved attribute reference 'tree' for class 'Node'
,所以可能也不是一个好兆头。
class Tree:
def __init__(self):
self.nodes = {}
def add_node(self, count):
new_node = Node()
new_node.tree = self
self.nodes[count] = new_node
class Node:
def __init__(self):
# Some data e.g. parent, children index
pass
解决方案
在初始化器中传递树Node
class Node:
def __init__(self, tree):
self.tree = tree
在创建节点时:
...
new_node = Node(self)
self.nodes[count] = new_node
...
推荐阅读
- angular - 退订后无法重新订阅主题
- c# - C# Socket 构造函数参数无效
- r - r sankeyNetwork 突出显示节点的所有连接路径
- r - 如何在ggplot2中混合aes_()和算术计算?
- android - Android项目如何使用/合并多个AndroidManifest.xml
- memory - 在 Windows 操作系统上运行的 Couch DB 正在分页,而它有足够的可用 RAM
- java - 通知未显示所有操作按钮
- javascript - 不能使用“Observable.Of(value)”
- java - 如何使用java在Repository Springboot中执行将由某个符号分隔的查询
- android - 在 Oreo 上也每 10 秒休眠和唤醒前台有界 IntentService