This media is not supported in your browser
VIEW IN TELEGRAM
Streamlit позволяет быстро разрабатывать интерактивные веб-приложения на Python и делиться ими. Вы можете легко создавать информационные панели, генерировать отчеты или разрабатывать чат-приложения. А после разработки, можно развернуть приложение на Community Cloud.
pip install streamlit
streamlit hello
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12
PyCharm – это мощная и популярная интегрированная среда разработки (IDE) для Python, созданная компанией JetBrains.
🗣️ Независимо от того, новичок вы или опытный разработчик, эта статья поможет вам максимально эффективно использовать PyCharm в ваших Python-проектах.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15
Pymem — мощная библиотека для работы с памятью процессов на уровне операционной системы. Она часто используется в геймдеве, тестировании и автоматизации задач, связанных с чтением и изменением памяти работающих приложений.
• Подключение к процессу
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 — инструмент для опытных пользователей, готовых изучать внутренности систем и процессов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13
Когда нужно объединить несколько списков, множеств или других итерируемых объектов, в 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]Можно использовать, когда нужно объединить данные из разных источников (например, из файлов или запросов). Или же, при необходимости экономии памяти, если результирующий объект слишком велик. А также при работе с потоками данных (например, логами или веб-запросами).
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥5🤯1
Идеальный гид для тех, кто хочет не просто писать код, но и понимать, как работает Python изнутри.
Узнайте о секретах языка, лучших практиках и советах от эксперта, который с 2000 года делится знаниями с программистами и корпорациями. Идеально для начинающих и опытных разработчиков, которые хотят углубить свои знания.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤2
В данном видео рассмотрим 10 очень интересных Python библиотек, которые способны улучшить ваши проекты. Они способы повысить читаемость и эффективность вашего кода, в некоторых случаях они ускоряют процесс разработки, так как предоставляют готовые инструменты.
Чуть позже загружу в комменты под постом, для тех, кто не может смотреть на ютубе.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍3🏆2
В этой статье, автор вспоминает популярную программу для "взлома" игр ArtMoney, но вместо её использования предлагает создать собственный инструмент на Python с библиотекой Pymem (ранее мы ее рассматривали в этом посте).
Цель — модифицировать память игры Titan Quest и "сделать персонажа миллионером".
Вы узнаете, как работать с памятью процессов, WindowsAPI и библиотекой Pymem.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤🔥4🔥4
В 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
error: Argument 1 to "greet" has incompatible type "int"; expected "str"
• Ловит баги до выполнения.
• Код становится чище и понятнее.
• Можно внедрять постепенно — не ломает существующий проект.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥4
Этот ресурс предоставляет небольшое количество задач для практики по базовым темам. Представленные задачи разбиты по уровням и категориям. Среди которых:
• Основы
• Функции
• Строки
• Математика
• Циклы
• Списки
• Словари
В общем, не плохой вариант для начинающих, чтобы попрактиковаться.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12
Anonymous Poll
60%
25%
6%
9%
1%
👍13
Суть проекта в том, чтобы создать персонального помощника для управления финансами, который поможет пользователям контролировать свои расходы, планировать бюджет и анализировать финансовые привычки.
Язык:
PythonБиблиотеки:
Flask, SQLAlchemy, matplotlib или Plotly, Twilio или Telegram API, Yahoo Finance API.Если вам понравился такой формат поста и вы хотите периодически получать идеи проектов для практики, оставьте побольше реакций🔥
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥33👍4❤1
Это инструмент для работы с ресурсами, которые требуют открытие и закрытие, например, с файлами, сетевыми соединениями, базами данных и многими другими. Мы рассмотрим эту тему на примере работы с файлами.
При работе с файлами, важно их закрывать после использования. Быть может, это не так очевидно, но если этого не сделать, то есть шанс возникновения ошибки или утечки памяти. Так вот, контекстный менеджер автоматизирует этот процесс и защищает от подобных ошибок.
К примеру, нам нужно прочитать текстовый файл и вывести его содержимое. Сделаем это с использованием контекстного менеджера
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, Python создаёт объект контекстного менеджера и вызывает два метода:•
__enter__(): Когда входите в блок with, этот метод открывает ресурс (например, файл).•
__exit__(): Когда выходите из блока, этот метод закрывает ресурс (например, закрывает файл), освобождая его.Контекстные менеджеры делают код более безопасным, читаемым и минимизируют ошибки, связанные с забытыми операциями закрытия или освобождения ресурсов. Используйте их для управления файлами, сетевыми соединениями, многозадачностью и любыми другими ресурсами, которые нужно открывать и закрывать.
Друзья, пост получился довольно длинным, но надеюсь полезным. Поддержите реакциями🔥 Возможно придумаю какой-то вариант, при котором посты будут компактнее, а подробное изложение где-то в другом месте.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥9
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7❤2👍2🤩1
Нашел интересную презентацию, которая погружает в основы ООП на Python.
— Что такое ООП и зачем оно нужно.
— Разбор классов и их конструкций.
— Ключевые принципы ООП: наследование, инкапсуляция, полиморфизм.
— Достоинства и недостатки подхода.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🤩2🫡2
Scrapy — мощная библиотека для Python, созданная для быстрого и удобного извлечения данных с веб-сайтов.
pip install scrapy
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
Когда у нас в коде часто вызывается одна и та же функция с одинаковыми аргументами, мы можем ускорить её работу с помощью кэширования. Для этого нам понадобиться встроенный декоратор
functools.lru_cache(), который сохраняет результаты выполнения функции, чтобы повторные вызовы с теми же аргументами не пересчитывались.from functools import lru_cache
@lru_cache(maxsize=128) # Ограничиваем размер кэша
def factorial(n):
if n == 0:
return 1
return n * factorial(n - 1)
print(factorial(50)) # Результат сохранится в кэше
• При первом вызове функции с аргументом результат сохраняется в кэше.
• При повторном вызове с тем же аргументом значение берётся из кэша, без повторного вычисления.
Когда кэш заполняется, старые записи удаляются по принципу LRU (Least Recently Used — наименее часто используемые).
— для функций с повторяющимися вызовами, где аргументы неизменяемы
— для ускорения рекурсивных алгоритмов
— для кэширования результатов медленных операций (запросов к API, чтения из базы данных)
Если полезно, оставляйте реакции, друзья🔥
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥5
Статья представляет собой подходы и советы, которые помогут вам писать чистый и эффективный Python-код.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
Sphinx — мощный инструмент для автоматического создания документации. Он генерирует красивые HTML, PDF и другие форматы из файлов с разметкой reStructuredText или Markdown.
— Генерация документации в HTML, PDF, LaTeX и ePub.
— Автоматическая генерация API-документации из исходного кода.
— Поддержка различных форматов разметки (reStructuredText, Markdown).
1. Установка
pip install sphinx
2. Создание проекта:
sphinx-quickstart
3. Генерация документации:
make html
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤1
Использование библиотеки pandas для работы с CSV-файлами в Python значительно облегчает обработку, анализ и манипуляцию данными. В этом посте рассмотрим базовые примеры работы с библиотекой.
pip install pandas
import pandas as pd
# Чтение CSV файла
df = pd.read_csv('data.csv')
# Вывод первых 5 строк
print(df.head())
# Запись данных обратно в CSV файл
df.to_csv('output.csv', index=False)
Фильтрация позволяет выбрать только те строки, которые удовлетворяют определённым условиям.
# Фильтрация строк, где значение в столбце 'age' больше 30
filtered_df = df[df['age'] > 30]
print(filtered_df)
age превышает 30.Если у вас есть несколько CSV-файлов, их можно легко объединить в один.
import glob
# Получение списка всех CSV файлов в текущей директории
csv_files = glob.glob('*.csv')
# Чтение и объединение всех CSV файлов
df_list = [pd.read_csv(file) for file in csv_files]
combined_df = pd.concat(df_list, ignore_index=True)
print(combined_df)
Здесь все CSV-файлы в текущей директории загружаются и объединяются в один DataFrame.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7