Курс 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. Аргумент по умолчанию
  3. Управление сессиями в Python
  4. Функция zip() — объединение последовательностей
  5. Работа с модулем os в Python
  6. Форматирование строк с f-строками
  7. Работа с библиотекой requests
  8. Сумма элементов списка
  9. Проверка файла .py на синтаксис.
  10. Итераторы с потерямиZIP
  11. Форматирование объектов с модулем pprint
  12. Объединение словарей в Python
  13. Функция product() в Python
  14. Создание вкладок с TKinter
  15. Работа со строками в Python
  16. Создание графиков в терминале
  17. Открытие и запись файлов
  18. Лямбда-функции в defaultdict
  19. Работа с deque из collections
  20. Оптимизация поиска в словарях
  21. Многострочные строки в Python
  22. Вызов функций по строке в Python.
  23. Ограничение ресурсов в Python
  24. Получение комбинаций в Python
  25. Обязательные аргументы в Python
  26. Преобразование списков в словарь
  27. Настройка вывода NumPy
  28. Метод ior для битовых операций
  29. Метод __ilshift__ для битового сдвига влево
  30. Получение значений из словарей
  31. Поиск наиболее частого элемента
  32. Просмотр внешнего файла в Python
  33. Работа с timedelta в Python
  34. Виртуальные среды в Python
  35. Namedtuple в Python
  36. Фильтрация списков с itertools
  37. Создание новой даты в Python
  38. Генераторы в Python
  39. Поиск элементов BeautifulSoup
  40. Генерация ключей RSA
  41. Значения по умолчанию в Python
  42. Резервирование символов в Python
  43. Установка и загрузка Instaloader
  44. Склеивание строк через метод join()
  45. Декораторы в Python
  46. Деление в Python

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