Форум сайта python.su
0
import datetime from datetime import datetime import time def fastorders(self): dateformat='%d.%m.%Y' for bookorder in bookorders: dat1=datetime.datetime.strptime(bookorder.dateorder,dateformat) dat2=datetime.datetime.strptime(bookorder.datetakeorder,dateformat) difdayz=dat2-dat1 dayzstr=str(difdayz) if dayzstr== '1' or '2': print(bookorder.surnm, bookorder.dateorder, bookorder.datetakeorder)
Прикреплённый файлы:
stackstack.jpg (125,3 KБ)
Офлайн
857
Typical_beginerВот это “применение” - это неправильная конструкция. Операция or в Python работает не так, как ты думаешь; она там гораздо умнее и включает в себя дополнительный функционал (имеет собственное значение). Поэтому придётся тебе книжку какую-нибудь почитать по питону для самых маленьких. Такие глупые ошибки могут быть только результатом того, что человеку вдруг подумалось, что он может до всего догадаться сам, потому что, по его наивному мнению, питон - простой язык, пригодный буквально для олигофренов. Это не так.
но я условный оператор применилif dayzstr== '1' or '2':
Отредактировано py.user.next (Янв. 23, 2021 17:19:10)
Офлайн
294
Вопрос, а накой вы храните в классе даты в строковом формате? Зачем вы переводите число в строку, и потом сравниваете со строками, если вам нужно числа? А если вам нужна будет разница в месяц, вы будете 31 условий проверять? а если в год?
Что мешает вычеркнуть dayzstr=str(difdayz) сделать вот так :
if dayzstr <=2:
[code python][/code]
Отредактировано PEHDOM (Янв. 23, 2021 18:14:34)
Офлайн