29261
№ 4974297878 Обучающий канал по Python Ссылка для друга - https://t.me/+I7jrAQKR5xAyYTAy По всем вопросам @mascarov_valentin Реклама на бирже - https://telega.in/c/Python_per_month
⚙️ str.removeprefix
str.removeprefix удаляет указанный префикс из строки, если он присутствует. Это полезно для очистки и нормализации данных без лишних условий и срезов.
Python Learning 👩💻
Мои коллеги из Яндекса создали сильнейшие IT каналы 🔥
Наше кредо — программирование не сложно, просто никто не объяснял нормально.
⚙️ itertools.pairwiseitertools.pairwise возвращает пары соседних элементов из итерируемого объекта. Это полезно для сравнения, анализа трендов и работы с графами или координатами.
Python Learning 👩💻
⚙️ functools.total_orderingfunctools.total_ordering автоматически добавляет недостающие методы сравнения, если определить хотя бы __eq__ и один из <, <=, >, >=. Это полезно для упрощения классов с порядком.
Python Learning 👩💻
⌛ Что будет выведено при выполнении кода?
Пояснение ⬇️
При делении на ноль возникает ZeroDivisionError, который перехватывается в except. Блок else пропускается, но finally выполняется всегда. Код работает корректно.
⚙️ dis.get_instructions()dis.get_instructions() возвращает пошаговую дизассемблировку байткода функции. Это полезно для глубокого понимания работы Python-интерпретатора, оптимизации и написания инструментов анализа кода.
Python Learning 👩💻
⚙️ sys.getwindowsversion()sys.getwindowsversion() возвращает подробную информацию о версии Windows, на которой запущен интерпретатор. Это полезно для адаптации поведения скриптов под особенности конкретной ОС — например, различия в путях, шрифтах, файловых системах.
Python Learning 👩💻
⚙️ sys.getprofile()sys.getprofile() возвращает текущую функцию-профайлер, установленную через sys.setprofile(). Это полезно для отладки, написания инструментов анализа выполнения и динамического переключения профилирования.
Python Learning 👩💻
⚙️ sys.get_asyncgen_hooks()sys.get_asyncgen_hooks() возвращает текущие функции-хуки, которые вызываются при создании и финализации асинхронных генераторов. Это полезно для отслеживания или изменения поведения async def-генераторов в глубоко асинхронных приложениях.
Python Learning 👩💻
🧑🏻💻Освойте Python, создайте свое портфолио и получите первый оффер в IT!
Хотите начать карьеру разработчика, но не знаете, с чего начать? Курс «Python Developer. Basic» поможет вам освоить Python с нуля и подготовиться к работе в IT!
Что вас ждет на курсе?
- Python с нуля: разберетесь с основами программирования и ключевыми концепциями.
- Реальные проекты: создадите портфолио, которое поможет выделиться среди кандидатов.
- Помощь в поиске работы: получите поддержку в составлении резюме, стратегии поиска и подготовке к собеседованиям.
⚡️Начните обучение сегодня и сделайте первый шаг к карьере в IT! https://otus.pw/vaYfw/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
⚙️ sys.set_coroutine_origin_tracking_depth()sys.set_coroutine_origin_tracking_depth() включает отслеживание цепочек await, что помогает отлаживать асинхронный код. Это полезно при поиске причин неожиданных исключений в сложных async/await вызовах.
Python Learning 👩💻
⚙️ types.SimpleNamespacetypes.SimpleNamespace — это удобный способ создать объект с доступом к атрибутам через точку без явного определения класса. Полезно для временных структур данных и подмены dict в более читаемой форме.
Python Learning 👩💻
📊Это база: типы данных в Python
Если вы хотите освоить Python, но путаетесь в типах данных и коллекциях — пора навести порядок. Без этого знания вас ждёт боль: ошибки в коде, неожиданные баги и потерянные часы отладки.
На открытом уроке мы:
- Разберём, как работают int, float, str, bool и NoneType.
- Поймём, чем list отличается от tuple и зачем нужны set и dict.
- Узнаем, как изменяемость объектов влияет на логику программ.
Все участники получат скидку на большое обучение «Python Developer. Basic».
⚡️Встречаемся 24 марта в 20:00 (мск). Успейте зарегистрироваться: https://otus.pw/1ouf/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
⚡️ Айтишник из «VISION» скупил курсы айти школ и выложил гигабайты материалов к себе
Каждый найдет что-то по душе:
1202 ГБ — Python
1811 ГБ — Frontend
1100 ГБ — C / C++ / C#
804 ГБ — Java
411 ГБ — SQL & БД
309 ГБ — DevOps
998 ГБ — ИБ & Хакинг
773 ГБ — Kotlin / Swift
189 ГБ — PHP
201 ГБ — GoLang
170 ГБ — Rust
167 ГБ — QA / Тестирование
310 ГБ — 1C + Лицензии
495 ГБ — Машинное обучение
704 ГБ — Аналитика Данных
991 ГБ — Дизайн
Материалы в закрепе, постоянно пополняются👆🏻
🚫 Антипаттерн недели: Ошибочное использование is для сравнения строк и чисел
В Python оператор is проверяет, являются ли две переменные одним и тем же объектом в памяти, а не просто равны ли их значения. Использование is вместо == для сравнения строк и чисел может привести к непредсказуемым результатам.
✔️ Используйте == для корректного сравнения значений.
Python Learning 👩💻
🚫 Антипаттерн недели: Использование переменных с плавающим значением в качестве условий
В Python числа с плавающей точкой (float) могут вести себя неожиданно из-за погрешности вычислений. Это особенно критично при сравнении и использовании их в логических выражениях.
✔️ Избегайте прямого сравнения float — используйте округление или math.isclose().
Python Learning 👩💻
⚙️ itertools.batcheditertools.batched разбивает итерируемый объект на фиксированные группы. Это полезно для пакетной обработки данных, группировки и работы с потоками данных.
Python Learning 👩💻
⚙️ time.thread_time()time.thread_time() возвращает процессорное время текущего потока. Это полезно для точного измерения производительности одного потока, исключая время ожидания или сна.
Python Learning 👩💻
⚙️ functools.cached_propertyfunctools.cached_property превращает метод в лениво вычисляемое свойство, результат которого кэшируется. Это полезно для тяжёлых вычислений, которые должны выполняться только один раз на экземпляр.
Python Learning 👩💻
⚙️ types.CodeType.replacetypes.CodeType.replace() (Python 3.8+) позволяет создавать изменённые копии объектов байткода (code object). Это мощный инструмент для метапрограммирования, трансформации функций и написания декораторов низкого уровня.
Python Learning 👩💻
⚙️ sys.interactivehooksys.__interactivehook__ — это скрытая возможность задать поведение Python-интерпретатора при запуске в интерактивном режиме (REPL). Полезно для автоматического подключения библиотек, настройки окружения или изменения приветствия.
Python Learning 👩💻
⚙️ types.DynamicClassAttributetypes.DynamicClassAttribute позволяет переопределять доступ к атрибутам на уровне класса, а не экземпляра. Это полезно, если поведение свойства должно отличаться при обращении через экземпляр и через сам класс.
Python Learning 👩💻
⌛ Что будет выведено при выполнении кода?
Пояснение ⬇️
Генератор (x * x for x in range(3)) создаёт значения: 0, 1, 4. next(gen) возвращает первый элемент (0), второй вызов — следующий (1). Код работает корректно и не вызывает ошибок.
⚙️ sys.getfilesystemencodeerrors()sys.getfilesystemencodeerrors() возвращает стратегию обработки ошибок, используемую при кодировании/декодировании имён файлов в байты и обратно. Это полезно для совместимости с нестандартными или повреждёнными именами файлов.
Python Learning 👩💻
⚙️ contextlib.aclosingcontextlib.aclosing() — это контекстный менеджер для асинхронных объектов, у которых есть метод aclose(). Полезен при работе с асинхронными ресурсами, например, сетевыми соединениями или файлами.
Python Learning 👩💻
⚙️ sys.getandroidapilevel()sys.getandroidapilevel() возвращает API-уровень Android, на котором запущен Python-процесс. Это эксклюзивная функция для Android-платформ, полезная для адаптации поведения скрипта под версию ОС.
Python Learning 👩💻
⚙️ sys.set_int_max_str_digits()sys.set_int_max_str_digits() ограничивает количество цифр при преобразовании очень длинных строк в int. Это полезно для защиты от атак типа "Denial of Service" через огромные числа.
Python Learning 👩💻
⚙️ posix_spawnposix_spawn() предоставляет высокопроизводительный способ создания новых процессов в Unix-подобных системах, являясь более эффективной альтернативой subprocess.Popen().
Python Learning 👩💻
⌛ Что будет выведено при выполнении кода?
Пояснение ⬇️
defaultdict(int) создаёт словарь, где отсутствующие ключи получают значение 0 по умолчанию. d["a"] += 1 увеличивает a до 1, а d["b"] автоматически создаётся с 0. Код выполняется без ошибок.