Курс 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"
- Применение функции к элементам списка
- Уникальность ключей в словаре
- Сумма элементов списка
- Удаление элементов из списка в Python
- Отправка HTTP-запросов с User-Agent
- Создание словарей с defaultdict
- Принципы LSP и ISP в Python
- Итерация по копии коллекции
- Декоратор @override
- Функция print() — вывод информации
- Проверка вхождения подстроки
- Метод count в Python: почему count(», ») возвращает 4?
- Разделение строки на пары ключ-значение.
- Фильтрация последовательности
- Вычисление разности множеств в Python
- Генерация резюме в Gensim
- Lambda-функция в Python: использование с map() и sum()
- Присвоение и ссылки
- Вызов функций по строке в Python.
- Явный импорт в Python
- Поиск файлов по шаблону
- Создание namedtuple из словаря
- Переопределение метода sub
- Создание функций высшего порядка
- Обработка исключений
- Оптимизация памяти с slots
- Перетасовка списков в Python
- Виртуальное окружение Python
- Автоматизация скриптов на AWS Lightsail.
- Операторы += в Python
- Блок try…finally в Python
- Закрытие файла в Python
- Оптимизация гиперпараметров с Scikit Optimize
- Цикл for с enumerate() в Python
- Именованные срезы в Python
- Разделение строки с регулярными выражениями
- Работа с файлами и директориями в Python.
- Мощь вложенных функций в Python
- Область видимости переменных
- Конвертация изображений в PDF
- Функция enumerate() — Python
- Работа с файлами в Python
- Каналы Senior: Python, Java, Frontend, SQL, C++
- Добавление элемента к кортежу















