在Python类中公开成员是否有一个通用的约定?我知道这是一个“视情况而定”的情况,但也许有一个经验法则。在
私人会员:
class Node:
def __init__(self):
self.__children = []
def add_children(self, *args):
self.__children += args
node = Node()
node.add_children("one", "two")
公众成员:
^{pr2}$如果没有好的理由使children
私有化,您会继续使用add_children
方法吗?在
我认为让成员暴露在外更像Python,除非您有特定的理由不这样做,因为Python代码通常不打算对用户进行任何必要的限制。这就是为什么,例如,没有真正的私人会员。在
“private”的前缀是一个下划线。
__
用于损坏名称并避免一些问题,例如在使用多重继承时。 我从来没用过。在无论如何,这些成员仍然可以公开访问;这只是一个约定。在
“这要看情况。”
说真的。如果添加子元素时
Node
需要执行某些操作,则需要第一个捕捉到更改并执行需要执行的操作。如果这只是一个你不需要担心更改的列表,那么就选择后者。在相关问题 更多 >
编程相关推荐