INHERITANCE in python3
Pieter van Oostrum
pieter-l at vanoostrum.org
Thu Dec 19 09:22:39 EST 2019
Random832 <random832 at fastmail.com> writes:
> On Wed, Dec 18, 2019, at 23:10, vahid asadi via Python-list wrote:
>> HI guys this is my first post on python mailing lists ever and i glad
>> to do this.
>> my problem here is why this attribute is not recognize by python and it
>> raise an traceback error that said 'there is no such p.family
>> attribute'. although i use multiple inheritance with 'super ' it not
>> works. thanks for your help.
>>
>> ``` class Username: def __init__(self,name,*args): self.name
>> = name
>> class Userfamily: def __init__(self,family,*args):
>> self.family = family
>> class Person(Username,Userfamily): def __init__(self,*args):
>> super().__init__(*args)
>>
>>
>> p = Person("v","aaa")print(p.name)print(p.family)```
Please next time, supply a properly indented Python source, with only normal ASCII spaces, not no-break spaces, i.e. exactly like in your Python source code.
>
> The Username class also needs to call super(). In general, super() is
> intended to be used with all classes that might be part of a multiple
> inheritance hierarchy, not just the derived one.
Just for safety, also add it to the Userfamily class.
--
Pieter van Oostrum
www: http://pieter.vanoostrum.org/
PGP key: [8DAE142BE17999C4]
More information about the Python-list
mailing list