Pythoner
رفتن به کانال در Telegram
Полезные материалы по Python, которые будут интересны опытному и начинающему разработчику. Сотрудничество - @flattys Цены - @serpent_media Канал на бирже: https://telega.in/c/pythonercode
نمایش بیشتر6 622
مشترکین
+124 ساعت
-87 روز
-4030 روز
آرشیو پست ها
6 622
✈️CPython — это основная реализация Python на C, и именно она запускается, когда ты пишешь
python file.py.
➡️Работает в 3 шага:
1. Парсинг — Python-код превращается в AST (дерево разбора)
2. Компиляция — AST превращается в байткод (.pyc), понятный интерпретатору
3. Исполнение — байткод читается виртуальной машиной, которая шаг за шагом исполняет инструкции
➡️Можно посмотреть байткод вот так:
import dis
def hello():
print("hi")
dis.dis(hello)
🔫Выведет набор инструкций, как CPU, только питоновый.
CPython — медленный, но гибкий. Именно тут живёт GIL, и именно он влияет на потоки.
🐍Pythoner6 622
✈️Инкапсуляция - это один из четырех основных принципов объектно-ориентированного программирования. Она позволяет скрыть внутреннюю реализацию объекта от других объектов и защитить его состояние от неправильного использования.
➡️ Методы и атрибуты
В Python, чтобы скрыть атрибуты объекта, их нужно объявить как приватные, используя два подчеркивания перед именем атрибута. Например, для создания приватного атрибута
name нужно написать __name. Также для доступа к этому атрибуту извне класса нужно использовать специальные методы get и set.
➡️Метод get возвращает значение приватного атрибута, а метод set устанавливает новое значение. Эти методы должны быть определены в самом классе. Например:
class Person:
def __init__(self, name):
self.__name = name
def get_name(self):
return self.__name
def set_name(self, name):
self.__name = name
person = Person("John")
print(person.get_name()) # "John"
person.set_name("Mike")
print(person.get_name()) # "Mike"
💡Для чего нужна инкапсуляция вообще?
- Защита данных от внешнего доступа
- Предотвращение случайных изменений данных
- Упрощение взаимодействия с объектами
- Сокрытие сложной логики работы объекта от пользователя
💡Будет ли код работать без нее?
- Да, будет!
🐍Pythoner6 622
✈️Что такое асинхронное программирование?
Асинхронное программирование - это способ написания кода, позволяющий выполнять несколько задач одновременно без блокировки основного потока выполнения. В Python для этого используются ключевые слова async и await, которые делают функции асинхронными и определяют точки, где происходит ожидание.
➡️Преимущества асинхронного программирования:
1. Увеличение производительности: Асинхронный код позволяет эффективно использовать ресурсы, ускоряя выполнение задач.
2. Масштабируемость: Обработка множества задач одновременно без блокировки позволяет создавать масштабируемые приложения.
3. Улучшен отклик приложения: Пользователи получают быстрый отклик, даже если выполняются длительные операции.
➡️Основные концепции асинхронного программирования в Python:
- `async def` и `await`: Обозначают асинхронные функции и точки ожидания выполнения задачи.
- Цикл событий (Event Loop): Основной механизм управления выполнением асинхронных задач.
- Корутины (Coroutines): Асинхронные функции, которые могут приостанавливать свое выполнение.
➡️Пример асинхронного кода:
import asyncio
async def async_example():
print("Начало выполнения")
await asyncio.sleep(2)
print("Завершение выполнения")
async def main():
tasks = [async_example() for _ in range(5)]
await asyncio.gather(*tasks)
if __name__ == "__main__":
asyncio.run(main())
➡️Интеграция асинхронного кода:
Множество библиотек и фреймворков в Python уже поддерживают асинхронное программирование, включая aiohttp, asyncio, и многие другие. Это позволяет создавать высокопроизводительные веб-приложения, работающие с асинхронными запросами.
⛓Дополнительные ресурсы:
- Документация Python по асинхронному программированию
- Статья на Real Python: "Async IO in Python: A Complete Walkthrough"
🐍Pythoner6 622
Нужны 7 желающих для работы с искусственным интеллектом.
Работа из дома. График свободный.
Пришло задание — изучили — выполнили — получили свои деньги.
Деньги вы получаете в зависимости от сложности задания. Например:
За задание могут платить 500-10.000 рублей.
В зависимости от сложности.
500 рублей — это около 5-30 минут.
10 000 руб. это 5-6 часов.
💰 В среднем новичок получает до 150.000 руб в месяц. А опытный может и 300-500т.
Мы обучим вас сами:
— 3 дня уроков по 30 минут
— Домашки с проверкой и оплатой бонусами
— Платим 10 тыс за каждую выполненную домашку
⚡ Набор заканчивается завтра.
Для регистрации жмите кнопку "Зарегистрироваться":
Зарегистрироваться
#реклама 16+
ganstaagency.com
О рекламодателе
6 622
✈️Метод strip() удаляет начальные и конечные пробелы (а также другие переданные символы) из строки. Это удобно для очистки ввода, сравнения данных и предобработки текста.
➡️Пример:
user_input = " hello world "
cleaned = user_input.strip()
print(cleaned)
# ➜ "hello world"
🔫В этом примере strip() убирает лишние пробелы по краям строки, оставляя только значимый текст.
💡strip() удобно использовать при чтении из файлов, работе с формами, разборе CSV/JSON и валидации пользовательского ввода. Также существуют .lstrip() и .rstrip() — для удаления только слева или справа. Метод делает работу с текстом точной и предсказуемой
🐍 Pythoner6 622
✈️Библиотека Keras - это высокоуровневая нейронная сеть, написанная на языке Python. Она предоставляет простой и интуитивно понятный интерфейс для создания и обучения глубоких нейронных сетей. Благодаря своей простоте и гибкости, Keras позволяет разработчикам быстро создавать и испытывать различные модели машинного обучения.
➡️Преимущества Keras
Keras имеет несколько преимуществ, которые делают его популярным выбором среди разработчиков машинного обучения. Во-первых, Keras обладает простым и интуитивно понятным API, что делает его легко изучаемым и использованием даже для новичков. Во-вторых, Keras предоставляет множество предварительно обученных моделей, которые можно использовать для решения различных задач. Наконец, Keras обеспечивает высокую производительность и эффективность, благодаря использованию оптимизированных библиотек, таких как TensorFlow и Theano.
➡️Возможности Keras
Keras поддерживает широкий спектр возможностей машинного обучения. Он позволяет создавать и обучать различные типы нейронных сетей, включая полносвязные сети, сверточные нейронные сети и рекуррентные нейронные сети. Кроме того, Keras предоставляет инструменты для работы с изображениями, текстом и временными рядами. Он также поддерживает автоматическое распределение обучения на несколько GPU, что позволяет ускорить процесс обучения на больших данных.
🐍 Pythoner
6 622
✈️ImageHash – это Python-библиотека для вычисления perceptual-хешей изображений. Она помогает находить похожие или дублирующиеся картинки, даже если они были изменены (например, обрезаны или пережаты).
➡️ Ключевая функция:
Сравнение изображений через хеши (ahash, dhash, phash, whash), что позволяет быстро искать дубликаты без полного перебора пикселей.
➡️Пример использования:
from PIL import Image
import imagehash
hash1 = imagehash.average_hash(Image.open('image1.jpg'))
hash2 = imagehash.average_hash(Image.open('image2.jpg'))
print(hash1 - hash2) # Чем меньше разница, тем больше похожи изображения
💡 Главный плюс:
Автоматизация поиска дубликатов с высокой точностью и поддержкой разных алгоритмов хеширования. Отлично подойдет для очистки медиабиблиотек.
🐍 Pythoner6 622
Где вести задачи и проекты?
В Битрикс24 ✅
Бесплатный онлайн-сервис для бизнеса и совместной работы.
— Удобный планировщик задач для всей команды с чек-листами и комментариями.
— Популярные проектные методики: канбан, скрам, диаграмма ганта.
— Видеозвонки в один клик из чата.
— Календарь и слоты для совместного планирования.
— Умный ИИ-помощник для постановки четких тз.
Полный комплект для эффективности вашей команды.
Ставьте первую задачу прямо сейчас⚡
Начать
#реклама 16+
task-24.bitrix24.ru
О рекламодателе
6 622
✈️Контейнер — это объект, предназначенный для хранения других объектов. Контейнеры реализуют различные структуры данных, такие как списки, кортежи, словари, множества и другие.
➡️Основное назначение контейнеров — удобное и эффективное хранение и доступ к группам объектов. Контейнеры позволяют легко добавлять, удалять и итерировать элементы.
➡️Все контейнеры в Python реализуют общие методы, такие как len() для получения размера и contains() для проверки вхождения элемента. Это обеспечивает единый интерфейс работы с разными типами контейнеров.
🐍Pythoner
6 622
✈️Функция help в Python используется для получения справочной информации о встроенных функциях, методах, модулях, классах и объектах Python. Эта функция является очень полезным инструментом для изучения новых методов и библиотек, а также для получения помощи в решении проблем.
➡️Чтобы использовать функцию help, просто вызовите ее и передайте объект, для которого вы хотите получить справочную информацию. Например, если вы хотите получить справочную информацию о функции print, вы можете вызвать функцию help следующим образом:
help(print)
🔫Это приведет к выводу документации о функции print в вашем интерпретаторе Python.
🐍Pythoner6 622
Яндекс приглашает аналитиков на Weekend Offer
Ищем опытных аналитиков, чтобы вместе создавать технологии, которые меняют мир.
Кого мы ищем
✅ Аналитиков с опытом работы на Python от 3 лет.
✅ Готовы работать в офисе или гибридном режиме в Москве или Санкт-Петербурге. С релокацией из других городов РФ поможем.
Как всё устроено
✅ До 3 декабря регистрируйтесь на сайте.
✅ 6 декабря решаете задачи на двух технических секциях.
✅ 7 декабря знакомитесь с командами и получаете офер.
В Яндексе наука и бизнес работают вместе. Мы опираемся на научные исследования и аналитические данные, а потом превращаем их в технологии и реальные продукты.
Присоединяйтесь, чтобы строить полезные сервисы вокруг ИИ-технологий, находить новые решения и делать то, что другим не по силам.
Зарегистрироваться
#реклама
yandex.ru
О рекламодателе
6 622
✈️dabl - библиотека для автоматического анализа данных и построения базовых ML-моделей в одну строку кода. Разработана командой scikit-learn.
➡️Ключевая функция:
Автоматизирует всю рутину: предобработку данных, feature engineering и подбор моделей с визуализацией результатов.
➡️Пример использования:
import dabl
data = dabl.datasets.load_titanic()
dabl.SimpleClassifier().fit(data, target_col="survived")
# Готово! Смотрите отчёт в Jupyter
⛓GitHub
💡Главный плюс
Мгновенный старт работы с данными — библиотека сама определяет типы фичей, подбирает трансформеры и строит interpretable-модели.
🐍Pythoner6 622
✈️Python функции globals() и locals() возвращают словари с текущими переменными — глобальными и локальными соответственно. Это даёт прямой доступ к пространству имён программы.
➡️Пример:
x = 10
def demo():
y = 5
print("Локальные:", locals())
print("Глобальные:", globals()["x"])
demo()
Локальные: {'y': 5}
Глобальные: 10
➡️Зачем это нужно:
- Отладка и инспекция переменных
- Динамическое выполнение кода (eval, exec)
- Построение интерактивных сред (например, REPL или дебаггеры)
💡Использовать с осторожностью — это мощный, но легко усложняющий читаемость инструмент.
🐍Pythoner6 622
➡️Использование оператора %s для форматирования строк
Оператор %s используется для вставки значения переменной в строку. Для этого нужно указать %s внутри строки и затем после строки поставить знак %, за которым следует переменная, значения которой нужно вставить.
Пример:
name = "John"
age = 25
print("Меня зовут %s и мне %s лет." % (name, age))
Вывод:
Меня зовут John и мне 25 лет.⬆️В этом примере мы использовали оператор %s для вставки значений переменных name и age в строку. Мы передали эти значения в виде кортежа (name, age) после знака %. ➡️Форматирование чисел с помощью оператора %s Оператор %s также может использоваться для форматирования чисел. Для этого нужно указать %s внутри строки и затем после строки поставить знак %, за которым следует число, значение которого нужно вставить. Пример:
number = 42
print("Ответ на главный вопрос жизни: %s" % number)
Вывод:
Ответ на главный вопрос жизни: 42⬆️В этом примере мы использовали оператор %s для вставки значения переменной
number в строку.
🐍Pythoner6 622
✈️Pywebview — это легковесная библиотека для создания графических приложений на Python с использованием веб-технологий. Она позволяет разрабатывать интерфейсы с помощью HTML, CSS и JavaScript, а также интегрировать их с логикой на Python. Pywebview предоставляет простой способ взаимодействия между веб-интерфейсом и кодом на Python.
➡️Создание простого окна. Вот базовый пример:
import webview
# Создаем окно с URL
webview.create_window('Пример pywebview', '<https://example.com>')
# Запускаем приложение
webview.start()
⬆️Этот код создаст окно с названием "Пример pywebview" и загрузит страницу по указанному URL. Это отличный способ быстро превратить ваше веб-приложение в настольное приложение.
⛓GitHub
🐍Pythoner6 622
✈️pyTermTk - библиотека для создания продвинутых текстовых интерфейсов (TUI) с поддержкой виджетов, тем оформления и кросс-платформенной работой. Она позволяет строить интерактивные терминальные приложения с элементами GUI (кнопки, таблицы, формы) без зависимости от графического сервера.
➡️Пример использования:
from TermTk import TTk, TTkButton
def on_click():
print("Button clicked!")
root = TTk.TTk()
btn = TTkButton(text="Click me!", pos=(10,5), size=(20,3))
btn.clicked.connect(on_click)
root.mainloop()
💡 Главный плюс:
Полноценный набор UI-компонентов (CheckBox, RadioButton, ScrollArea) + поддержка "тёмной/светлой" тем прямо в терминале.
🐍Pythoner