Курс 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"
- Работа с JSON данными в Python
- Оптимизация гиперпараметров в Python
- Открытие, чтение и закрытие файла
- Сериализация объектов в Python
- Создание тестовых данных с Faker
- Оператор деления для класса Rational
- Использование двоеточия в Python
- Тестирование с responses
- Измерение времени выполнения кода
- Метод ipow для возведения в степень
- Строки в Python: апострофы и кавычки
- Сортировка в Python
- Удаление ключа из словаря в Python
- Метод init в Python
- Работа с collections.Counter
- Команда %dhist — список посещенных каталогов
- Тест скорости набора текста на Python
- Хранение данных
- Функции в Python: создание и вызов
- Создание таблиц в Python с PrettyTable
- Гибкие функции Python
- Приоритет операций в Python
- Метод rmatmul для пользовательских матриц
- Метод get для словаря
- Переопределение метода
- kwargs в Python
- Работа с GitHub в Telegram
- Переопределение унарных операторов
- Группы исключений в Python
- Регистрация на курсы SF Education
- Библиотека Chartify: руководство
- Оператор space-invader
- Работа с множествами в Python
- Операторы увеличения и уменьшения в Python
- Декораторы с аргументами
- Работа с IP-адресами в Python
- Обработка исключений в Python
- Управление User-Agent в Python
- Вложенные циклы в Python
- Функции map, filter и reduce
- Управление мышью и клавиатурой с Pyautogui
- Форматирование данных с pprint
- Метод remove() для удаления элемента из списка
- Оператор Walrus: правильное использование
- Создание копии итератора
- Обработка ошибок в Python
- Пустой оператор pass в Python















