У меня есть два класса: MyClass и MyClass2. Для MyClass я взял файл и вернул каждое слово в этот файл. В MyClass2 я унаследовал MyClass и в основном написал код, который должен был хранить все слова в словаре вместе с частотой слов в качестве значений. Первый класс, который я уже тестировал, и он смог вернуть каждое слово. MyClass2 Я думал, что написал правильно, но я думаю, что я не наследую MyClass, или мой . Метод iter написан isreclty. Каждый раз, когда я пытаюсь запустить свой код, он возвращает ошибку. Поскольку это домашнее задание, (Также я не хочу, чтобы меня рассматривали как обмана ..) Я не буду публиковать весь свой код, если не нужно отвечать на мои вопросы, и я не ожидаю, что кто-нибудь перепишет или полностью исправить мой код. Мне просто нужно какое-то руководство относительно того, неправильный конструктор или неправильный код, или если я просто не правильно форматировал свой код и неправильно наследовал класс ...? Я новичок в python, и мне просто нужна помощь.Python: объект не имеет атрибута
from myclass import MyClass
class MyClass2(MyClass):
def __init__(self, Dict): #Is the problem within the constructor?
self.Dict = Dict
Dict = {}
def dict(self, textfile):
text = MyClass(textfile) #Was I wrong here??
..................
..............
..............
return self.Dict
def __iter__(self):
for key, value in self.Dict.items():
yield key, value
Когда я запускаю тестовый код, я получаю сообщение об ошибке, которая говорит:
AttributeError: 'MyClass2' object has no attribute 'items'
Пожалуйста, дайте мне знать, если я пропускаю anythign или если не хватает информации.
Я проверил его, используя этот код, который был дан:
filename = MyClass1('name of file')
y = MyClass2(filename)
for x in y:
print x
Вот в отслеживающий: именование
Traceback (most recent call last):
File "C:\myclass.py", line 25, in <module>
for x in y:
File "C:\myclass2.py", line 19, in __iter__
for key, value in self.Dict.items():
AttributeError: 'MyClass2' object has no attribute 'items'
Имеет ли 'MyClass' атрибут' items'? – aIKid
Что такое tpe - Dict, который передан в конструктор? Также Dict = {} скорее всего не делает то, что вы думаете. Что вы ожидаете от этого? – grim
Где еще вы используете «предметы» в своем коде? – Christian