Форум сайта python.su
0
Добрый день всем.
Данный вопрос продолжение темы про дату,где я спрашивал можно ли её делать нулевой.
Я сделал отдельный атрибут класса,отвечающий за выполнение заказа и назвал её isorder.Она может принимать только 2 ответа Да и Нет.
И вот мне надо вывести количество заказов,которые не были выданы.
То есть я через цикл проверяю по isorder и если там встречается Нет,счётчик считает и потом выводит на экран.
Но почему то он не видит переменную isorder в одном методе,но прекрасно работает в другом методе.
Показываю блок кода,как у меня появляется в программе атрибут класса isorder(ввожу с клавиатуры) и метод где ищется количество невыполненных заказов
def get_isorder(): isorder = input('Выполнен ли заказ?Введите "Да\Нет" ') if "Да" in isorder or "Нет" in isorder: return isorder else: print("Ответ должен быть Да или Нет") isorder = input('Выполнен ли заказ?Введите "Да\Нет" ') def failorders(self): countord=0 for bookorder in bookorders: if "Нет" in isorder: countord+=1 print("Количество неудовлетворённых заказов = ", сountord)
if "Нет" in isorder: NameError: name 'isorder' is not defined
Прикреплённый файлы:
sddsfdfs.jpg (77,1 KБ)
Офлайн
568
Typical_beginer
Что такое по-вашему self?
Офлайн
857
Typical_beginerВесь код класса напиши.
Я сделал отдельный атрибут класса,отвечающий за выполнение заказа и назвал её isorder.
>>> class A: ... def method1(self): ... self.x = 1 ... def method2(self): ... print(self.x) ... >>> a = A() >>> a.method1() >>> a.method2() 1 >>>
Отредактировано py.user.next (Янв. 21, 2021 04:00:16)
Офлайн
0
Спасибо вам за подсказку.
Мне надо было лишь дописать к условию объект класса и выбрать из него нужный атрибут
Получился рабочий вариант
if 'Нет' in bookorder.isorder:
Офлайн