Курс Python → Изменение логики работы с временем

В Python 3.5 и более поздних версиях это поведение было изменено, и теперь полуночное время datetime.time объекта считается True. Это означает, что при использовании конструкции if obj: для проверки наличия данных в объекте, полуночное время будет рассматриваться как заполненное значение, а не как пустое.

Это изменение в логике работы с логическими значениями datetime.time объектов может привести к непредвиденным ошибкам в коде, который рассчитывает на старое поведение. Чтобы избежать подобных проблем, необходимо учитывать этот факт при написании условий и проверок в коде, особенно если в них используются объекты времени.


import datetime

time = datetime.time(0, 0) # полуночное время

if time:
    print("Полуночное время считается заполненным")
else:
    print("Полуночное время считается пустым")

В данном примере мы создаем объект времени, представляющий полночь, и затем проверяем его наличие с помощью конструкции if. В Python 3.5 и более поздних версиях вывод программы будет «Полуночное время считается заполненным», что отражает изменение в логике работы с логическими значениями для временных объектов.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Управление экспортом элементов
  2. Аннотации типов в Python
  3. Сериализация данных в JSON с помощью json.dumps
  4. Множественное назначение в Python
  5. GitHub в Telegram: подписка на уведомления
  6. Проектирование Singleton с метаклассом
  7. Оператор is в Python
  8. Проверка на истинность объектов в Python
  9. Работа с датами в Python
  10. Работа со строками в Python
  11. IPython и Jupyter Notebook: руководство
  12. Оператор объединения словарей
  13. Создание OrderedDict
  14. Проекты на Python
  15. Копирование объектов в Python
  16. Генераторы в Python
  17. Декораторы в Python
  18. Настройка логгера Logzero
  19. Defaultdict в Python
  20. Модуль math: константы π и e
  21. Сравнение неупорядоченных списков
  22. Отступы в Python
  23. Функция findall() для поиска вхождений строки
  24. Разбиение строки в Python
  25. Удаление дубликатов с сохранением порядка с помощью dict.fromkeys
  26. PATCH-запрос с библиотекой requests
  27. Поиск наиболее частого элемента
  28. Блок else в обработке исключений
  29. Объединение коллекций в Python
  30. Проверка типа объекта в Python
  31. Установка максимального количества цифр
  32. Именование переменных в Python
  33. Вложенные функции в Python
  34. Работа с утверждениями в Python
  35. Открытие и запись файлов
  36. Непрерывная проверка в Python
  37. Замена переменных в Python
  38. Разработка игры Pong с turtle
  39. Основы работы с базами данных в Python
  40. Подсчет элементов с помощью Counter из collections
  41. Получение списка кортежей из словаря
  42. Измерение времени выполнения кода
  43. Форматирование даты с strftime()
  44. Генерация QR-кодов с библиотекой qrcode
  45. Проверка окончания строки с помощью str.endswith()

Marketello читают маркетологи из крутых компаний