Задать вопрос
Sony_py
@Sony_py

Как исправить AttributeError: 'NoneType' object has no attribute?

class Tree:
        def __init__(self):
            self.apple = 0

        def apples(self):
            self.apple += 1

        def total(self):
            print(self.apple)

    tree = Tree()
    tree.apples().total()


Получаю ошибку
AttributeError: 'NoneType' object has no attribute 'total'
  • Вопрос задан
  • 759 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
  • Академия Эдюсон
    Python-разработчик
    9 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Python-разработчик + ИИ
    8 месяцев
    Далее
Решения вопроса 1
Maksim_64
@Maksim_64
ML Engineer
Ну у тебя метод apples не имеет инструкции return соответственно возвращает None. То есть вот в этой строчке tree.apples().total() после выполнения apples() у тебя в результате объект None. А объект None не имеет метода total. О чем и говорит ошибка. Метод total это метод экземпляра класса Tree. tree.total() Соответственно, что бы изменить атрибут экземпляра класса и затем вывести его на печать, согласно твоему объявлению класса, то вот так.
tree = Tree()
tree.apples()
tree.total()
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Краснодар
от 220 000 до 300 000 ₽
ITK academy Краснодар
от 75 000 ₽
DimaTech Ltd Краснодар
от 140 000 до 140 000 ₽