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

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

Цены: @heywan_media

Реклама на бирже: https://telega.in/c/+IOa15XDNbxRkYzNi
Download Telegram
🔻 Bandit: Обеспечение безопасности Python-кода

Bandit — это мощный инструмент для поиска уязвимостей и потенциальных проблем безопасности в коде Python.

⚙️ Как работает:

1. Сканирует каждый файл проекта.
2. Строит абстрактное синтаксическое дерево (AST).
3. Анализирует узлы AST с помощью плагинов для выявления угроз.

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

✔️ Установка

pip install bandit


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

🐍 Ghostly Python | #инструменты
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥1
Как правильно замерять время в Python

time.monotonic() — это функция в модуле time, предоставляющая монотонное время, которое идеально подходит для замера интервалов времени без учета изменений в системных часах.

❗️ Почему это важно?

➡️ Иммунитет к изменениям системного времени: monotonic() устойчив к ручным изменениям времени и переводам системных часов вперед/назад.

➡️ Отсутствие сдвигов во времени: Не зависит от системных изменений, таких как смена времени, что делает его идеальным для точных замеров.

⚙️ Как использовать?

import time

start_time = time.monotonic()

# Ваш код для замера

end_time = time.monotonic()
elapsed_time = end_time - start_time

print(f"Время выполнения: {elapsed_time} секунд")


Таким образом, вы получаете точные результаты независимо от внешних факторов.

🐍 Ghostly Python | #фишки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11
Та за что.... 😭

🐍 Ghostly Python | #мемы
Please open Telegram to view this post
VIEW IN TELEGRAM
😁23
👣 Python REST API. Разработка RESTFul проекта на Python Flask

В этом видео вы узнаете, что такое REST API и как с ним работать. Пошагово объясняется принцип его работы, а также показан пример использования. Вы увидите процесс создания проекта, установки необходимых библиотек и разработки кода для клиента. Особое внимание уделяется обработке URL, тестированию проекта и отображению данных. Видео охватывает основные операции с данными, такие как добавление, обновление и удаление. В конце видео — подведение итогов и рекомендации по дальнейшему изучению.

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

🐍 Ghostly Python | #уроки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍101🔥1
📱 Работа со словарями в Python

Словари — это реализация в Python структуры данных, более известной как ассоциативный массив. Словарь состоит из набора пар ключ-значение. Каждая пара «ключ-значение» сопоставляет ключ с соответствующим значением.

Вот что вы узнаете из этого урока: мы рассмотрим основные характеристики словарей Python и узнаем, как получить доступ к значениям словаря и управлять ими.

Данный урок по словарям будет в формате PDF, который вы можете скачать из архива по ссылке ниже.


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

🐍 Ghostly Python | #уроки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
💻 Оператор match case в Python

Оператор match case, упрощает написание кода, где требуется проверка множества условий. Он работает аналогично switch в других языках (например C#) и позволяет использовать шаблонное сопоставление для более гибкой проверки.

⚙️ Синтаксис

value = 10

match value:
case 10:
print("Это число десять!")
case 20:
print("Это число двадцать!")
case _:
print("Это что-то другое!")


➡️ Расширенные возможности

match case поддерживает более сложные проверки, такие как сопоставление с типами данных и извлечение значений из структур:

point = (2, 3)

match point:
case (x, y) if x == y:
print("Точка лежит на прямой y = x")
case (x, y):
print(f"Точка находится в координатах ({x}, {y})")


Оператор _ используется как «заглушка» для всех случаев, которые не попадают под предыдущие условия.

В общем, match case делает код более читаемым и легким для поддержки, особенно когда нужно проверять сложные условия или структуры данных.


🐍 Ghostly Python | #фишки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍112
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Streamlit: интерактивные веб-приложения на Python

Streamlit позволяет быстро разрабатывать интерактивные веб-приложения на Python и делиться ими. Вы можете легко создавать информационные панели, генерировать отчеты или разрабатывать чат-приложения. А после разработки, можно развернуть приложение на Community Cloud.

⚙️ Установка:

pip install streamlit


✔️ Проверка установки запуском приложения Hello:

streamlit hello


➡️ Ссылка на Streamlit

🐍 Ghostly Python | #инструменты
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12
🔖 Темы для изучения Python

🐍 Ghostly Python | #шпаргалки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍114
👩‍💻 PyCharm для Python: полное руководство по установке, настройке и использованию

PyCharm – это мощная и популярная интегрированная среда разработки (IDE) для Python, созданная компанией JetBrains.

➡️ В этом подробном руководстве мы рассмотрим все аспекты работы с PyCharm: от установки и настройки до продвинутых функций и полезных плагинов.

🗣️ Независимо от того, новичок вы или опытный разработчик, эта статья поможет вам максимально эффективно использовать PyCharm в ваших Python-проектах.


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

🐍 Ghostly Python | #статьи
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15
🖼️ Библиотека: pymem

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

💡 Основные возможности:

🟠 Чтение и запись данных из памяти других процессов.
🟠 Поиск значений в памяти по указанным критериям.
🟠 Управление процессами: поиск процесса по имени или PID.
🟠 Интеграция с Windows API для низкоуровневого доступа.

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

Подключение к процессу

import pymem

# Подключаемся к процессу по его имени
pm = pymem.Pymem("notepad.exe")

print(f"Процесс ID: {pm.process_id}")


Чтение и запись в память

address = 0x123456  # Адрес в памяти (пример)
value = pm.read_int(address) # Чтение значения по адресу
print(f"Значение в памяти: {value}")

# Запись нового значения
pm.write_int(address, 42)
print("Новое значение записано!")


✔️ Установка

pip install Pymem


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

⚠️ Использование Pymem может быть небезопасным, если применяется без должных знаний. Pymem — инструмент для опытных пользователей, готовых изучать внутренности систем и процессов.


🐍 Ghostly Python | #библиотеки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13
💻 Фишка: Использование itertools.chain() для объединения итерируемых объектов

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

📌 Почему это удобно

• Работает лениво (lazy evaluation), обрабатывая элементы по одному, без создания большого результирующего объекта.

• Работает с любыми итерируемыми объектами — списками, кортежами, генераторами.

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

Объединение списков:

from itertools import chain

list1 = [1, 2, 3]
list2 = [4, 5, 6]
result = chain(list1, list2)

print(list(result))
# Вывод: [1, 2, 3, 4, 5, 6]


Объединение разных итерируемых объектов:

set1 = {7, 8, 9}
tuple1 = (10, 11, 12)

result = chain(set1, tuple1)
print(list(result))
# Вывод: [7, 8, 9, 10, 11, 12]


Можно использовать, когда нужно объединить данные из разных источников (например, из файлов или запросов). Или же, при необходимости экономии памяти, если результирующий объект слишком велик. А также при работе с потоками данных (например, логами или веб-запросами).

🐍 Ghostly Python | #фишки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥5🤯1
📖 Как устроен Python: гид для разработчиков

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

Узнайте о секретах языка, лучших практиках и советах от эксперта, который с 2000 года делится знаниями с программистами и корпорациями. Идеально для начинающих и опытных разработчиков, которые хотят углубить свои знания.

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

🐍 Ghostly Python | #книги
Please open Telegram to view this post
VIEW IN TELEGRAM
👍72
📱 10 Уникальных Библиотек Python Которые Не Стоит Пропускать

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

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

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


🐍 Ghostly Python | #библиотеки
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍3🏆2
🎮 Взламываем игры с помощью Python

В этой статье, автор вспоминает популярную программу для "взлома" игр ArtMoney, но вместо её использования предлагает создать собственный инструмент на Python с библиотекой Pymem (ранее мы ее рассматривали в этом посте).

Цель — модифицировать память игры Titan Quest и "сделать персонажа миллионером".

Вы узнаете, как работать с памятью процессов, WindowsAPI и библиотекой Pymem.


🖥 Перейти к статье

🐍 Ghostly Python | #статьи
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤‍🔥4🔥4
🖥 Анализатор mypy для проверки типов в коде Python

В Python, благодаря его динамической природе, можно писать код быстро и гибко. Однако, это может привести к трудноуловимым ошибкам. Тут на помощь приходит mypy — инструмент, который смотрит, правильно ли ты указал типы, и ловит косяки ещё до запуска кода.

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


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

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

pip install mypy


2. Добавляем аннотации типов в коде:

def greet(name: str, age: int) -> str:
return f"Привет, {name}! Тебе {age} лет."


3. Проверяем файл с помощью mypy:

mypy main.py


➡️ Если где-то накосячил с типами, mypy покажет, где именно. Например:

error: Argument 1 to "greet" has incompatible type "int"; expected "str"


🤔 Зачем оно нужно?

• Ловит баги до выполнения.
• Код становится чище и понятнее.
• Можно внедрять постепенно — не ломает существующий проект.

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

🐍 Ghostly Python | #инструменты
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥4
CodeHS: платформа с задачами для практики

Этот ресурс предоставляет небольшое количество задач для практики по базовым темам. Представленные задачи разбиты по уровням и категориям. Среди которых:

• Основы
• Функции
• Строки
• Математика
• Циклы
• Списки
• Словари

В общем, не плохой вариант для начинающих, чтобы попрактиковаться.

⛓️ Ссылка на ресурс

🐍 Ghostly Python | #ресурсы
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12
💡 Идея пет-проекта: Помощник по управлению финансами

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

⚙️ Основной функционал

💬 Отслеживание расходов: Добавление расходов с указанием категории, суммы и даты.

💬 Анализ расходов: Статистика по категориям расходов и времени, для лучшего понимания своих финансов.

💬 Планирование бюджета: Создание ежемесячного бюджета на основе доходов и обязательств.

💬 Напоминания: Уведомления о предстоящих счетах и платежах.

💬 Безопасность данных: Все данные защищены с помощью шифрования.

💬 Рекомендации по инвестициям: Основы инвестирования и советы по улучшению финансового положения.

Что используем:

Язык: Python
Библиотеки: Flask, SQLAlchemy, matplotlib или Plotly, Twilio или Telegram API, Yahoo Finance API.

⚡️ Сложность: средняя

Если вам понравился такой формат поста и вы хотите периодически получать идеи проектов для практики, оставьте побольше реакций 🔥


🐍 Ghostly Python | #идеи
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥33👍41
😬😬😬

🐍 Ghostly Python | #мемы
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣25🔥4
📁 Контекстные менеджеры в Python

Это инструмент для работы с ресурсами, которые требуют открытие и закрытие, например, с файлами, сетевыми соединениями, базами данных и многими другими. Мы рассмотрим эту тему на примере работы с файлами.

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

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

К примеру, нам нужно прочитать текстовый файл и вывести его содержимое. Сделаем это с использованием контекстного менеджера with:

with open("example.txt", "r") as file:
content = file.read()
print(content)


Здесь контекстный менеджер автоматически позаботится о закрытии файла, даже если внутри блока возникнет ошибка. После выполнения кода, файл будет закрыт, и ресурс будет освобождён.

Тоже самое, но без контекстного менеджера:

file = open("example.txt", "r")
content = file.read()
print(content)
file.close() # Нужно не забыть закрыть файл вручную!


Согласитесь, даже выглядит такой вариант, не очень удобно.

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

Когда вы используете with, Python создаёт объект контекстного менеджера и вызывает два метода:

__enter__(): Когда входите в блок with, этот метод открывает ресурс (например, файл).
__exit__(): Когда выходите из блока, этот метод закрывает ресурс (например, закрывает файл), освобождая его.

✔️ Вывод

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

Друзья, пост получился довольно длинным, но надеюсь полезным. Поддержите реакциями 🔥 Возможно придумаю какой-то вариант, при котором посты будут компактнее, а подробное изложение где-то в другом месте.


🐍 Ghostly Python | #уроки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥9