😁2
Почему это важно
Можно ожидать, что 𝚖𝚊𝚡(..., 𝚔𝚎𝚢=𝚏) вернёт 𝚏(𝚡), но это не так. Если нужен именно результат функции, придётся вызвать её отдельно: 𝚊𝚋𝚜(𝚖𝚊𝚡(𝚗𝚞𝚖𝚜, 𝚔𝚎𝚢=𝚊𝚋𝚜)) или 𝚖𝚊𝚡(𝚊𝚋𝚜(𝚡) 𝚏𝚘𝚛 𝚡 𝚒𝚗 𝚗𝚞𝚖𝚜).
Please open Telegram to view this post
VIEW IN TELEGRAM
✍8😁1
👍5
Гвидо ван Россум намеренно выбрал округление вниз: при таком подходе остаток всегда попадает в диапазон [𝟶, 𝚗) при положительном делителе. Это удобно для вычисления номера клетки в сетке, индекса в кольцевом буфере, дня недели. Гвидо объяснял: если нужно округление к нулю, можно написать 𝚒𝚗𝚝(𝚊 / 𝚋), а вот получить «правильное» округление вниз из округления к нулю — сложнее, поэтому Python выбрал более полезный вариант по умолчанию.
Почему это важно
При портировании кода между языками или при работе с отрицательными координатами разница в поведении % может привести к трудноуловимым багам: один и тот же код даст разные результаты в Python и в C/Java.
Please open Telegram to view this post
VIEW IN TELEGRAM
✍5
👍4
Почему это важно
Сравнивать 𝚏𝚕𝚘𝚊𝚝 через == почти всегда неправильно. Для денег и точных вычислений используют модуль 𝚍𝚎𝚌𝚒𝚖𝚊𝚕, для приближённых сравнений — 𝚖𝚊𝚝𝚑.𝚒𝚜𝚌𝚕𝚘𝚜𝚎(𝚊, 𝚋) или проверку 𝚊𝚋𝚜(𝚊 - 𝚋) < 𝚎𝚙𝚜𝚒𝚕𝚘𝚗.
Please open Telegram to view this post
VIEW IN TELEGRAM
✍3
👍3
Python сравнивает кортежи лексикографически: сначала первые элементы, потом вторые и так далее.
Почему это важно
Это поведение совпадает с сортировкой слов в словаре: «кот» < «кота». Но при сортировке данных (например, версий (𝟷, 𝟸) vs (𝟷, 𝟸, 𝟶)) результат может быть неожиданным, если не учитывать правило «короче = меньше».
Please open Telegram to view this post
VIEW IN TELEGRAM
✍2
👨💻1
Почему это важно
Частая ошибка — использовать 𝚍.𝚐𝚎𝚝(𝚔𝚎𝚢) для проверки существования ключа: если значение 𝙽𝚘𝚗𝚎, результат неотличим от отсутствия ключа. Чтобы точно проверить наличие, используйте 𝚔𝚎𝚢 𝚒𝚗 𝚍 или обрабатывайте 𝙺𝚎𝚢𝙴𝚛𝚛𝚘𝚛.
Please open Telegram to view this post
VIEW IN TELEGRAM
✍5❤1
Начни новый год с новых знаний — на бесплатных практических курсах от YADRO 🔥
Это обучение через практику: от теории к реальному проекту вместе с инженерами компании.
Что ты получишь:
⏺️ 2,5 месяца разработки собственного проекта;
⏺️ 80% времени — практика, задания и подробные code review;
⏺️ менторство от инженеров компании;
⏺️ возможность попасть на стажировку в YADRO по итогам обучения.
YADRO — не просто место для старта. По итогам ежегодного исследования Changellenge компания вошла в топ-10 лучших для начала карьеры студентов IT-специальностей и получила Best Company Award 2026 среди интеграторов и корпоративных решений.
➡ Сейчас открыт набор сразу на шесть направлений: от разработки и тестирования до DevOps и низкоуровневого программирования.
Если ты студент 2 курса и старше — выбирай направление и регистрируйся на сайте.
Это #партнёрский пост
Это обучение через практику: от теории к реальному проекту вместе с инженерами компании.
Что ты получишь:
YADRO — не просто место для старта. По итогам ежегодного исследования Changellenge компания вошла в топ-10 лучших для начала карьеры студентов IT-специальностей и получила Best Company Award 2026 среди интеграторов и корпоративных решений.
Если ты студент 2 курса и старше — выбирай направление и регистрируйся на сайте.
Это #партнёрский пост
Please open Telegram to view this post
VIEW IN TELEGRAM
🤝2
Что выведет код?
Anonymous Quiz
16%
True {Item(1)}
58%
True {Item(1), Item(1)}
23%
True затем Error
4%
False затем Error
✍4
Почему это важно
Если нужны и сравнение, и хеширование (для 𝚜𝚎𝚝/𝚍𝚒𝚌𝚝), определите оба метода: __𝚎𝚚__ и __𝚑𝚊𝚜𝚑__, причём равные объекты должны иметь равные хеши.
Please open Telegram to view this post
VIEW IN TELEGRAM
✍4👍3
👍5
Почему это важно
Это может сломать валидацию: проверка 𝚒𝚏 𝚞𝚜𝚎𝚛_𝚒𝚗𝚙𝚞𝚝 𝚒𝚗 𝚊𝚕𝚕𝚘𝚠𝚎𝚍_𝚜𝚝𝚛𝚒𝚗𝚐 пройдёт для пустой строки, даже если это не предполагалось.
Please open Telegram to view this post
VIEW IN TELEGRAM
✍2