@Sergey_Lomakin

Почему в этом примере возникает TypeError: 'Data' object is not subscriptable?

class Data:
    def __init__(self, date):
        self.date = date

    @classmethod
    def extract(cls, date):
        temp = cls(str(date).split('-'))
        day, month, year = int(temp[0]), int(temp[1]), int(temp[2]) # ошибка здесь
        # day, month, year = (cls(day)), cls(month), cls(year)
        return day, month, year

    @staticmethod
    def validation(day, month, year):
        if 0 > year > 2020:
            if 1 > month > 12:
                if 1 > day > 31:
                    print(f'Введена дата: {day}.{month}.{year}')
                else:
                    print('Неверный день!')
            else:
                print('Неверный месяц!')
        else:
            print('Неверный год!')


date_1 = Data(25-9-1990)
print(date_1.extract(25-9-1990))
  • Вопрос задан
  • 66 просмотров
Решения вопроса 1
@kirillinyakin
Вы в temp вернули объект типа Date, у которого не определены магические методы доступа по индексу
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
deeplay Новосибирск
от 130 000 ₽
от 130 000 ₽
Enjoy PRO Санкт-Петербург
от 140 000 до 180 000 ₽
21 окт. 2020, в 12:50
2000 руб./за проект
21 окт. 2020, в 12:32
1500 руб./за проект