👍22🔥9❤1
Каждая часть курса будет основываться на предыдущей, включать в себя все более сложные темы и большее погружение в программирование и язык python.
Ссылочка на плейлист: YouTube🖤
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12❤5👍5
А вы знаете как в питоне работает цикл for под капотом?
Для начала нужно понять, что такое итерируемый объект и итератор. Итерируемый объект — любой объект, элементы которого можно обойти в цикле, для этого у него должна быть реализация метода
Но цикл for работает не с самим объектом, а с его итератором, тк именно итератор имеет реализацию метода
Поэтому, когда вы передаете объект в цикл for, под капотом вызывается функция
Как это поможет на практике? Представьте, что вам нужно обработать большой файл. Вместо того, чтобы загружать весь файл в память сразу, вы можете использовать итератор, чтобы читать файл построчно.
🔥 В следующий раз создадим кастомный итератор и подробно рассмотрим реализацию методов
👉 Python Ready | #практика
Для начала нужно понять, что такое итерируемый объект и итератор. Итерируемый объект — любой объект, элементы которого можно обойти в цикле, для этого у него должна быть реализация метода
__iter__()
:nums = [24, 86, 17, 94]
print(nums.__iter__()) # <list_iterator object at 0x0...>
Но цикл for работает не с самим объектом, а с его итератором, тк именно итератор имеет реализацию метода
__next__()
, в котором описана логика перебора. Создадим итератор:nums_iterator = iter(nums)
print(next(nums_iterator)) # 24
print(next(nums_iterator)) # 86
Поэтому, когда вы передаете объект в цикл for, под капотом вызывается функция
iter()
, затем работает next()
до исключения StopIteration
:while True:
try:
print(next(nums_iterator))
except StopIteration:
break
Как это поможет на практике? Представьте, что вам нужно обработать большой файл. Вместо того, чтобы загружать весь файл в память сразу, вы можете использовать итератор, чтобы читать файл построчно.
🔥 В следующий раз создадим кастомный итератор и подробно рассмотрим реализацию методов
__iter__()
и __next__()
!Please open Telegram to view this post
VIEW IN TELEGRAM
🔥44👍12❤5🤝5
Media is too big
VIEW IN TELEGRAM
Интерактивная платформа для изучения основ программирования на Python с практическими заданиями, встроенным ИИ-помощником и умной системой проверки, которая понимает логику решений как человек.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22🔥11🤝7❤4
Продолжаем углубление в тему итераторов: в прошлый раз мы разобрались, как работает цикл for, сейчас рассмотрим магические методы
__iter__
и __next__
и напишем свой кастомный итератор.Преимущества кастомных итераторов:
• Адаптация итерации под конкретные требования бизнес-логики приложения.
• Возможность перебрать структуру данных, которая не поддерживается встроенными итераторами.
• Улучшение читаемости кода за счет инкапсуляции сложной логики перебора внутри итератора.
🔥 — если узнал новое
🤝 — если уже пользуешься
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥53👍12🤝7❤6
В этой статье:
• Создание бота на Python с использованием библиотек.
• Парсинг объявлений по параметрам: название, категория, город, цена.
• Отслеживание и уведомления о смене цены с порогом.
• Управление списком отслеживаемых объявлений.
🔊 Продолжить читать можешь Habr!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤8🔥7
Рассмотрим 8 методов из стандартной библиотеки, которые помогают привести текст к чистому и удобному виду.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥41👍13❤10🤝5
В этом гайде реализуем гибкую архитектуру оповещений, с помощью которой можно отправлять уведомления по разным каналам: email, SMS, push, Slack и даже Discord.
В посте рассмотрим:
• Паттерн наблюдатель — как организовать подписку на события и оповещения слушателей.
• Полиморфизм — создаем единый интерфейс notify() для всех типов уведомлений.
• Расширяемость — добавляем новые каналы уведомлений всего в несколько строк.
🔥 — если узнал новое
🤝 — если уже писал подобное
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥38❤13👍10