Python 从子模块访问引用其他模块的父模块成员的方法

Python 从子模块访问引用其他模块的父模块成员的方法,python,python-3.x,Python,Python 3.x,Python新手。为标题道歉。已为此问题搜索了几天:S 我来自PHP背景,我可以在自己的文件中创建类,然后在任何地方调用这些类,只要我有对它们的引用 比如, 要求A级中的Z级 然后让B级扩展到A级 然后能够从类B调用类Z上的方法 我希望有一个父类,它包含其他类可以扩展的方法和成员,这样我就不会在每次创建一个以自己的方式不同但又与其他类相似的类时重新发明轮子 也许我对Python中模块如何工作的理解是错误的?下面是我试图实现的一个例子。我需要在一个模块中包含所有这些类吗?有人能解释一下我尝试做

Python新手。为标题道歉。已为此问题搜索了几天:S

我来自PHP背景,我可以在自己的文件中创建类,然后在任何地方调用这些类,只要我有对它们的引用

比如,

  • 要求A级中的Z级

  • 然后让B级扩展到A级

  • 然后能够从类B调用类Z上的方法

我希望有一个父类,它包含其他类可以扩展的方法和成员,这样我就不会在每次创建一个以自己的方式不同但又与其他类相似的类时重新发明轮子

也许我对Python中模块如何工作的理解是错误的?下面是我试图实现的一个例子。我需要在一个模块中包含所有这些类吗?有人能解释一下我尝试做什么的过程吗

import Z

class A():
    def __init__(self):
        self.varZ = Z()
        self.some_value = None

    def a_setter_function(self, value):
        self.some_value = value
然后扩展类,例如从类B到类X

import A

class B(A):
    def some_function(self):
        something = self.varZ.do_something_from_z_class()

    def set_value(self, value):
        self.a_setter_function(value)
总是提高

'ClassB' object has no attribute 'varZ'
从类B调用“a_setter_function()”没有问题

还可以从类A调用varZ上的方法

我能想到的唯一解决方案是在类a中有一个方法(从类B调用),它从类Z调用该方法


为什么我不能通过其父类a从类B调用类Z的方法?

导入a
,然后
类B(a)
将不起作用,因为
a
是一个模块对象。与导入Z和self.varZ=Z()相同;模块对象是不可调用的。一般来说,您尝试执行的操作是有效的。除了我指出的问题外,代码实际上不会引发
AttributeError
。看来你把你的问题简单化了,不经意间把问题解决了。我改变了我对问题的措辞。从Python的角度来看,我对如何解决我面临的问题没有足够的理解。