Курс 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. Генераторы списков в Python
  4. Создание Radio кнопок в tkinter
  5. Мониторинг работы программы Py-spy
  6. Функции map, filter, reduce
  7. Генераторы в Python
  8. Генераторы в Python
  9. Конвертация коллекций в Python
  10. Подсчет часто встречающихся элементов
  11. Получение локальных переменных в Python
  12. Разбиение строки в Python
  13. Объединение списков с помощью zip
  14. Создание множества в Python
  15. Многострочные комментарии в Python
  16. Комментарии в Python
  17. Enum в Python
  18. Метод setdefault() в Python
  19. Настройка нарезки списков
  20. Создание уникального множества
  21. Перевод текста с Python Translator
  22. Строковое представление объектов
  23. Магические методы в Python
  24. Метод split() в Python
  25. Регистрация на хакатоне
  26. Функция divmod() в Python
  27. Зарезервированные слова в Python
  28. split() без разделителя
  29. Установка и использование библиотеки google
  30. Декоратор защиты анонимных пользователей
  31. Функции высшего порядка в Python
  32. Python: библиотеки и функции
  33. Функция pow() — возвести число в степень
  34. Сортировка с параметром key
  35. Генерация случайных чисел в Python
  36. Профилирование данных с Pandas.
  37. Очистка списка от False, None, 0, «»
  38. Измерение времени выполнения кода с помощью time
  39. Функция zip() в Python
  40. Простой калькулятор Python
  41. Объединение словарей в Python
  42. Модуль itertools: комбинации и перестановки
  43. Форматирование строк в Python.
  44. Оптимизация методов в Python 3.7
  45. Форматирование объектов с модулем pprint
  46. Функция map() и ленивая оценка

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