#python
#python
Вопрос:
У меня есть модуль example.py с последующим классом:
class add:
def __init__(self, x, y):
self.x= x
self.y= y
def adding_two_nbr(self):
return self.x*self.y
когда я импортирую модуль следующим образом, я получил сообщение об ошибке:
import example
obj = example.add(1,2)
obj.adding_two_nbr()
ошибка:
AttributeError: 'add' object has no attribute 'adding_two_nbr'
Комментарии:
1. Не удается воспроизвести вашу ошибку. кажется, у меня все работает нормально.
2. Вы действительно сохранили example.py файл недавно? Возможно, вы импортируете версию на диске, которая была до добавления
adding_two_nbr
метода.3. В какой файл вы пытаетесь импортировать пример модуля?
4. Пожалуйста, покажите
print(dir(obj))
5. Запустите первые две строки в консоли, затем введите sorted(dir(obj)) и убедитесь, что вы видите adding_two_nbr в результирующем списке.
Ответ №1:
Код работает для меня гладко. Измените второй блок кода следующим образом
import example
obj = example.add(1,2)
print(obj.adding_two_nbr())
Сохраните этот файл как import_file.py в том же каталоге, что и example.py и бежать import_file.py .
Комментарии:
1. теперь он работает нормально после сохранения его под другим именем и перезагрузки. не уверен, почему это так. Спасибо.
2. Привет, если ответ вам помог, можете ли вы принять? Это просто для того, чтобы помочь другим, кто увидит этот вопрос в будущем.
Ответ №2:
Я думаю, что add class уже определен в модуле python, поэтому вам нужно изменить другое имя
AttributeError: 'add' object has no attribute 'adding_two_nbr'
adding_two_nbr не определен в python add module .