Ghostly Python
9.01K subscribers
535 photos
24 videos
599 links
Погружаемся в мир Python: задачи, фишки, библиотеки и террабайты полезного материала.

Сотрудничество: @heywan_n1

Цены: @heywan_media

Реклама на бирже: https://telega.in/c/+IOa15XDNbxRkYzNi
Download Telegram
🖼️ Библиотека: Pympler

Pympler — это инструмент для анализа использования памяти в Python. Он помогает выявить избыточное потребление памяти, утечки и другие проблемы. С помощью этой библиотеки можно отслеживать размер и продолжительность процессов вашего приложения во время его работы.

⚙️ Пример использования

from pympler import tracker

tr = tracker.SummaryTracker()
function_without_side_effects()
tr.print_diff()


➡️ Результат:

types |   # objects |   total size
======= | =========== | ============
dict | 1 | 280 B
list | 1 | 192 B


✔️ Установка

$ pip install pympler


➡️ Ссылка на документацию

🐍 Ghostly Python | #библиотеки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍103🔥3
👀 Области видимости переменных в Python: простое объяснение сложной темы

Области видимости — это не только про global и nonlocal, но и про то, как Python обрабатывает вложенные функции, исключения, классы и многое другое.

В этом уроке, разберём всё на понятных примерах и полезных схемах.

💬 Что внутри:

➡️ Как Python ищет переменные (правило LEGB: Local, Enclosing, Global, Built-in).
➡️ Область видимости в функциях, классах и модулях.
➡️ Почему global и nonlocal — это мощные, но опасные инструменты.
➡️ Особенности списковых включений и блоков исключений.
➡️ Как избежать конфликтов имён в коде.

⬇️ Скачать PDF из архива

🐍 Ghostly Python | #уроки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍84🔥2
💬 Задача: Что будет выведено в консоль?

def func(nums):
nums = nums + [4, 5]
nums[0] = 99
return nums

x = [1, 2, 3]
y = func(x)
print(x, y)


Выберите вариант ответа ниже 🔽

🐍 Ghostly Python | #задачи
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16😁1
🐱 Топ 5 полезных GitHub-репозиториев для изучения Python

1. Awesome Python

Мастхэв подборка лучших библиотек и инструментов для Python. Категории: веб-разработка, парсинг, машинное обучение и многое другое.

2. Real Python

Материалы от Real Python с примерами кода для изучения языка. Отлично подойдёт для новичков.

3. Python Patterns

Шаблоны проектирования для Python. Помогает понять, как писать код, который легко поддерживать.

4. TheAlgorithms/Python

Библиотека алгоритмов с реализациями на Python. Отлично подходит для изучения структур данных и алгоритмов.

5. FullStack Python

Гид по созданию полного стека приложений с использованием Python: от баз данных до фронтенда.

🐍 Ghostly Python | #ресурсы
Please open Telegram to view this post
VIEW IN TELEGRAM
👍132🔥2
✈️ Параллельная обработка списков с zip()

Когда нужно работать с несколькими списками одновременно, zip() помогает объединить их элементы в пары и работать с ними в одном цикле. Это упрощает код, делает его более читаемым и сокращает количество ошибок, особенно когда списки взаимосвязаны.

⚙️ Например:

names = ['Том', 'Артур', 'Чарли']
scores = [95, 82, 88]

for name, score in zip(names, scores):
print(f"{name} набрал {score} балов")


➡️ Результат:

Том набрал 95 балов
Артур набрал 82 балов
Чарли набрал 88 балов


Подходит для любых итерируемых объектов: списков, кортежей, строк, словарей.


🐍 Ghostly Python | #фишки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥3
🗂 Шпаргалка по Python от Code With Harry

Она включает всё, что нужно: от основ до продвинутых тем, с примерами кода и практическими советами.

📌 Что внутри:

➡️ Переменные и типы данных
➡️ Структуры данных: списки, словари, множества
➡️ Функции и аргументы
➡️ Условия и циклы
➡️ Обработка ошибок
➡️ Работа с файлами
➡️ Классы и ООП

🗄 Скачать PDF из архива

🐍 Ghostly Python | #шпаргалки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
📱 Как и зачем использовать any() и all() в Python

any() и all() — это две встроенные функции, которые помогают быстро проверять списки (или другие коллекции) на соответствие условиям.

1️⃣ any() используется, если нужно узнать, есть ли в коллекции хоть один элемент, удовлетворяющий условию. Например:

nums = [0, 0, 1]
if any(nums):
print("Есть ненулевые элементы!") # True, потому что 1 ненулевой


Это полезно при проверке, нужно ли выполнять действие.

2️⃣ all() помогает проверить, выполняются ли условия для всех элементов. Например:

nums = [2, 4, 6]
if all(n % 2 == 0 for n in nums):
print("Все числа чётные")


🐍 Ghostly Python | #фишки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🔥2
📱 Лучшие Проекты Для Начинающих Python-Разработчиков

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

В этом ролике рассмотрите несколько проектов для начинающих python-разработчиков. Эти проекты помогут вам закрепить теорию, применить полученные знания на практике и набить руку в написании кода. Некоторые из них даже можно добавить в будущее портфолио.

➡️ Ссылка на видео

Для тех, у кого проблемы с ютубом, загружу видео в комменты 🔥


🐍 Ghostly Python | #уроки
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11
🖼️ Библиотека: Rich

Позволяет задавать консольным приложениям более привлекательный и удобный интерфейс. С ее помощью вы можете изменять стиль и цвет текста, а также отображать таблицы, разметку и код с подсветкой синтаксиса.

⚙️ Что умеет:

➡️ Красивое оформление текста: стили, цвета, подчёркивание и многое другое.

➡️ Создание таблиц: данные становятся понятными и приятными для восприятия.

➡️ Прогресс-бары: удобно для отслеживания выполнения задач.

✔️ Установка

pip install rich


➡️ Ссылка на документацию
⛓️ Ссылка на гайд по библиотеке

🐍 Ghostly Python | #библиотеки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
⚙️ SnakeViz: оптимизация производительности Python-кода

SnakeViz — это визуализатор профилирования Python-кода. Если ваш скрипт работает медленно и нужно понять, где именно теряется производительность, этот инструмент поможет всё наглядно увидеть.

💬 Как работает?

1. Установите библиотеку:

pip install snakeviz


2. Запустите профилирование с помощью встроенного cProfile:

python -m cProfile -o output.prof ваш_скрипт.py


3. Визуализируйте результаты:

snakeviz output.prof


Интерфейс откроется в браузере, показывая, какие функции занимают больше всего времени.

➡️ Ссылка на документацию

🐍 Ghostly Python | #инструменты
Please open Telegram to view this post
VIEW IN TELEGRAM
👍84🔥3
💸 Интеграция Telegram-бота с ЮKassa

Статья предлагает пошаговое руководство по подключению платежей через ЮКассу в Telegram-боте на Python с использованием aiogram 3. Рассматриваются важные нюансы, с которыми можно столкнуться, даже если есть базовая документация.

➡️ Ссылка на статью

🐍 Ghostly Python | #гайды
Please open Telegram to view this post
VIEW IN TELEGRAM
👍93🔥3
😡 Гайд по работе с базами данных SQLite в Python

SQLite — отличный выбор для локального хранения данных, и sqlite3 в Python делает его использование простым и удобным. Давайте разберём основные операции с базами данных, начиная с создания, вставки данных, обновления и удаления.

1️⃣ Создание и подключение к базе данных:

import sqlite3

# Подключение к базе данных (создаётся новая, если не существует)
conn = sqlite3.connect('example.db')
cursor = conn.cursor()


2️⃣ Создание таблицы:

cursor.execute('''
CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY,
name TEXT,
age INTEGER
)
''')


3️⃣ Вставка данных:

cursor.execute('INSERT INTO users (name, age) VALUES (?, ?)', ('Alice', 30))
conn.commit() # Сохраняем изменения


4️⃣ Получение данных:

cursor.execute('SELECT * FROM users')
rows = cursor.fetchall()
for row in rows:
print(row)


5️⃣ Обновление данных:

cursor.execute('UPDATE users SET age = ? WHERE name = ?', (31, 'Alice'))
conn.commit()


6️⃣ Удаление данных:

cursor.execute('DELETE FROM users WHERE name = ?', ('Alice',))
conn.commit()


📌 Советы

🟢 Используйте параметризованные запросы (? или :) для защиты от SQL-инъекций.
🟢 Закрывайте соединение с базой после завершения работы: conn.close().
❗️ SQLite подходит для небольших проектов, тестирования или хранения локальных данных.

🐍 Ghostly Python | #гайды
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19
🔻 Скрипт: Шифр Цезаря на Python

Шифр Цезаря - это простой метод шифрования, при котором каждая буква в сообщении сдвигается на фиксированное количество позиций в алфавите. Название этого шифра происходит от имени знаменитого римского полководца Цезаря, который использовал его для обмена сообщениями со своими союзниками.

Давайте наглядно разберём, как он работает с простым примером:


Исходный текст: HELLO
Сдвиг: 3

⚙️ Пример кода на Python

def caesar_cipher(text, shift):
result = ""
for char in text:
if char.isalpha(): # Проверка, является ли символ буквой
shift_base = ord('A') if char.isupper() else ord('a')
result += chr((ord(char) - shift_base + shift) % 26 + shift_base)
else:
result += char # Оставляем не буквенные символы без изменений
return result

# Пример использования
text = "HELLO"
shift = 3
print(f"Зашифрованный текст: {caesar_cipher(text, shift)}")


Результат: KHOOR

💬 Как это работает?

🟢 ord(char) возвращает ASCII-код символа.
🟢 Сдвигаем код символа на shift позиций и используем % 26, чтобы обойти границы алфавита.
🟢 Результат — зашифрованная строка.

🐍 Ghostly Python | #скрипты
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🤯2
This media is not supported in your browser
VIEW IN TELEGRAM
Наверное, у всех есть такой друг... 😄

🐍 Ghostly Python | #мемы
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15😁5😱1
🖼️ Библиотека: deepface

deepface — это легкая в использовании библиотека для Python, предназначенная для распознавания лиц и анализа их характеристик, таких как возраст, пол, эмоции и расы.

Особенность Deepface заключается в использовании гибридного подхода, который объединяет современные модели, такие как VGG-Face, FaceNet, OpenFace, DeepFace, DeepID, ArcFace, Dlib, SFace и GhostFaceNet.

⚙️ Пример использования

В качестве примера, предположим, что нам необходимо сравнить пару лиц:

from deepface import DeepFace

result = DeepFace.verify(
img1_path = "face_1.jpg",
img2_path = "face_2.jpg",
)


В результате мы получим словарь c данными анализа двух изображений.

Также, возможно и анализировать такие данные, как: возраст, пол, раса, эмоции. Например:

objs = DeepFace.analyze(
img_path = "img4.jpg",
actions = ['age', 'gender', 'race', 'emotion'],
)


✔️ Установка

pip install deepface


🐱 Ссылка на GitHub

🐍 Ghostly Python | #библиотеки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍121
🐍 CheckiO: Прокачиваем Python с задачами

CheckiO — это платформа, где ты можешь решать задачи, ломать голову над интересными кейсами и смотреть, как справились другие. Отличный способ улучшить навыки и научиться думать нестандартно.

Здесь всё просто: выбираешь задачу, решаешь, а потом сравниваешь своё решение с решениями сообщества. Идеально для тех, кто любит учиться через практику и немного посоревноваться.

➡️ Ссылка на платформу

🐍 Ghostly Python | #ресурсы
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
Все мы иногда Сергей...

🐍 Ghostly Python | #мемы
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12😁64
📱 Python. К вершинам мастерства. Изучаем продвинутый Python

Курс охватывает ключевые темы Python: от модели данных, работы с последовательностями, словарями и Unicode до более сложных тем, таких как функции, декораторы, аннотации типов, паттерны проектирования, наследование, итераторы и генераторы. Также рассматриваются конкурентность, асинхронное программирование, метапрограммирование, динамические атрибуты и дескрипторы.

➡️ Ссылка на курс

🐍 Ghostly Python | #уроки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71
📱 Tato — это форматировщик макетов файлов на языке Python. В отличие от других автоформаттеров, tato форматирует только организацию/разметку файла. Он пытается организовать файлы в четыре секции: импорт, константы, классы и функции.

🐱 Ссылка на GitHub

🐍 Ghostly Python | #инструменты
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7