我是一名刚开始学习Python的C++程序员.我想知道如何在大型Python类中跟踪实例变量.我习惯有一个.h
文件给我一个整齐的列表(包括评论)所有班级的成员.但是,由于Python允许您动态添加新的实例变量,您如何跟踪它们?
我正在想象一个场景,当我已经有一个新的实例变量时,我错误地添加了一个新的实例变量 - 但它离我工作的地方有1000行.是否有避免这种情况的标准做法?
编辑:看起来我对术语"成员变量"产生了一些困惑.我的意思是实例变量,我已经相应地编辑了我的问题.
我想说,避免这种情况的标准做法是不要写类,你可以在1000行以外的任何地方!
说真的,对于任何有用的类来说,这太过分了,尤其是在与Python一样富有表现力的语言中.使用标准库提供的更多内容并将代码抽象到单独的模块中应该有助于保持LOC的倒计时.
标准库中最大的类别远低于100行!
首先:类属性还是实例属性?或两者?=)
通常,您只需__init__
在方法定义之前添加类定义中的实例属性和类属性,这通常应涵盖90%的用例.
如果代码动态添加属性,它可能(希望:-)有充分的理由这样做......利用动态特性,内省等.除此之外,以这种方式添加属性可能不像你想象的那么常见.