Найти - Пользователи
Полная версия: Вопрос по наследованию.
Начало » Python для новичков » Вопрос по наследованию.
1
Elaphe
Подскажите, можно ли при создании элемента подкласса добавить одну переменную так, чтобы остальные переменные, инициализируемые функцией __init__ родительского класса, не были затронуты?
Если я пишу
class My_HTMLParser(HTMLParser):
    def __init__(self):
        self.users = False
То получаю ошибку:
Traceback (most recent call last):
File “C:\Users\User\PycharmProjects\rating\rating1 - Copy.py”, line 40, in <module>
parser.feed(my_data)
File “C:\Python34\lib\html\parser.py”, line 164, in feed
self.rawdata = self.rawdata + data
AttributeError: ‘My_HTMLParser’ object has no attribute ‘rawdata’

То есть мне, получается, нужно полностью копировать содержимое __init__ родительского класса, но это извращение какое-то. Должен быть какой-то другой метод.
Мне нужно, чтобы в момент создания элемента класса My_HTMLParser в нем создавалась переменная self.users со значением False.
py.user.next
>>> from html.parser import HTMLParser
>>> 
>>> class H(HTMLParser):
...     def __init__(self):
...         super().__init__()
...         self.user = 'x'
... 
>>> h = H()
>>> h.feed('<html></html>')
>>> h.get_starttag_text()
'<html>'
>>>
Elaphe
Спасибо большое!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB