我对python非常陌生,所以如果我错过了一些东西,请不要生气。
似乎python中的类和实例变量在使用时只是冲刺存在,这种使用和实例变量声明的组合导致类的声明不再是类的唯一地方。可以定义数据结构。因此给定一个类Cls
,人们无法分辨为它创建了哪些数据结构,只需通过跟踪流到类的声明就可以访问它,就像使用C和Java等语言一样。相反,人们会强制搜索可能已为该类使用/定义变量的所有模块。
因此,当一个类被多个模块使用时,虽然您知道属于该类的某些数据结构必须已经定义,但要知道它的名称和类型,您必须搜索所有导入的可能已经使用该类的文件(以创建新变量的方式)来查看它使用/定义的位置。
示例 声明:
class Cls:
pass
模块1:
Cls.m = 2.3
module_n:
print Cls.m
再次问题是那些在module_n
上操作的人,在他们写这个印刷声明之前,他们不知道变量名是否会在module1
或其他模块中定义在导入列表中可以使用Cls
,但如果他们无法找到变量定义的位置,他们就无法使用它,因为他们不知道名称该变量,甚至它的存在。
作为一个不到一天的Python正在阅读一个相当冗长的项目的人,我想知道是否有任何解决这个问题的技巧,无论是作为读者还是作者,如何避免这些令人头痛的问题