小编r6d*_*6d9的帖子

基本继承(在python中)

用户,

我有一个关于继承的基本问题(在python中).我有两个类,其中一个继承自另一个类

class   p:
    def __init__(self,name):
        self.pname  = name

class   c(p):
    def __init__(self,name):
        self.cname  = name
Run Code Online (Sandbox Code Playgroud)

有没有可能我可以创建一个父对象和几个引用SAME父对象的子对象?它应该像父对象包含几个变量那样工作,每当我从子进入相应的变量时,我实际上从父进程访问变量.即如果我为一个孩子更改它,它也会更改为所有其他childes并且数据仅在内存中存储一​​次(并且不会为每个孩子复制...)

先感谢您.

这是一个可能的解决方法,我不认为这么好

class P:
    def __init__(self, name):
        self.pname = name

class C:
    def __init__(self, name,pobject):
        self.pobject = pobject
        self.cname = name
Run Code Online (Sandbox Code Playgroud)

这真的是最先进的还是存在其他概念?

塞巴斯蒂安

谢谢大家帮助我,还有名称约定:)但我仍然不是很满意.也许我会举一个更高级的例子来强调我真正想做的事情.

class P:
    data = "shareddata"
    def __init__(self,newdata):
        self.data = newdata 

    def printname(self):
        print self.name 

class C(P):
    def __init__(self,name):
        self.name = name
Run Code Online (Sandbox Code Playgroud)

现在我可以做到以下几点

In [33]: c1 = test.C("name1")

In [34]: c2 = test.C("name2")

In [35]: c1.printname()
name1

In [36]: c2.printname() …
Run Code Online (Sandbox Code Playgroud)

python oop inheritance

3
推荐指数
1
解决办法
449
查看次数

标签 统计

inheritance ×1

oop ×1

python ×1