类继承人

2024-10-01 13:32:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图完全掌握Python中的类继承性。我用类创建了程序,但它们都在一个文件中。我还创建了包含多个仅包含函数的文件的脚本。我已经开始在有多个文件的脚本中使用类继承,我遇到了一些问题。我下面有两个基本脚本,我正试图让第二个脚本从第一个脚本继承值。代码如下:

第一个脚本:

class test():

    def q():

        a = 20
        return a

    def w():
        b = 30
        return b

    if __name__ == '__main__':
        a = q()
        b = w()

if __name__ == '__main__':
    (a, b) = test()

第二个脚本:

^{pr2}$

有人能解释一下如何让第二个文件继承第一个文件的值吗?谢谢你的帮助。在


Tags: 文件函数代码nametest程序脚本return
2条回答
在Python中,一个类的每个成员函数(方法)应该有一个变量,称为^ {CD1>},它在C++、爪哇、C中是非常重要的^ {CD2>}指针/引用。在

基本上,要使代码正常工作,请将self作为所有方法的第一个参数。若要分配/读取成员变量,请使用self.aself.b,否则您只是按照现在的方式创建临时函数变量。在

我想说你用函数的东西把类定义搞砸了。它应该看起来更像这样:

class Test(object):

    def __init__(self):
        self.a = 20
        self.b = 30

if __name__ == '__main__':
    test_instance = Test()

以及

^{pr2}$

看起来你的问题不仅仅是继承,还有如何正确define classes in Python。在

注意事项:

  • 类总是使用大写的名称。这或多或少是惯例。在
  • 正如ruibm指出的,一个类的每个(非静态)方法都必须有一个名为(按惯例)self的第一个参数。在
  • 可以通过在__init__方法中将它们设置为self.variable = value来创建实例变量。在
  • 如果您调用Test(),您将得到一个对象。除非您将其分配给一个变量,否则仅仅像您在第二段代码中那样调用test2()是没有效果的。也许在你的例子中是因为用一种奇怪的方式定义了你的类。在

相关问题 更多 >