Реальный Python
3.78K subscribers
801 photos
10 videos
7 files
848 links
Все о пайтон, новости, подборки на русском и английском. По всем вопросам @evgenycarter
Download Telegram
Алгоритмы на Python

Включает в себя массу алгоритмов от арифметического анализа до блокчейна и структур данных.

https://github.com/TheAlgorithms/Python

#python

👉 @python_real
6 вещей, о которых вы, вероятно, не знали, что можно делать с Pandas

Со своими мощными и гибкими функциями Pandas стал незаменимым инструментом для ученых данных и аналитиков.

Ссылаясь на статистику, опубликованную PyPI, вы можете себе представить, что Pandas загружают более 3 миллионов раз в день?

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

Хотя многие пользователи уже знакомы с её основными функциями, в Pandas всё же есть множество скрытых возможностей, о которых вы, возможно, не знаете.

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

https://towardsdatascience.com/6-things-that-you-probably-didnt-know-you-could-do-with-pandas-d365b3362a55

#python

👉 @python_real
Полноценный API на Django REST Framework: легкая разработка, автодокументация и быстрый деплой

Сегодня мы погрузимся в процесс создания собственного API на Django с использованием мощного инструмента — Django REST Framework (DRF). Этот фреймворк предоставляет полный набор инструментов для разработки API: маршрутизация, сериализация данных, обработка запросов и формирование ответов. DRF значительно упрощает взаимодействие с клиентами через HTTP, поддерживая такие методы, как GET, POST, PUT и DELETE.

Однако, в отличие от FastAPI, Django REST Framework не включает встроенный инструмент для автодокументирования API. Мы легко решим эту задачу, воспользовавшись расширением drf‑spectacular, которое генерирует спецификации API в формате OpenAPI 3.0. Это позволит интегрировать интерфейсы, такие как Swagger и Redoc, для удобного тестирования и наглядной визуализации документации.

https://habr.com/ru/companies/amvera/articles/843232/

#python

👉 @python_real
Как использовать PyScript - фреймворк для фронтенда на Python

В последние годы популярность языка Python значительно возросла. Он имеет широкий спектр применения - от наиболее популярного использования в искусственном интеллекте до Data Science, робототехники и скриптинга.

В сфере веб-разработки Python используется в основном на бэкенде с такими фреймворками, как Django и Flask.

https://www.freecodecamp.org/news/pyscript-python-front-end-framework/

#python

👉 @python_real
Вещи, которые я узнал о создании CLI-инструментов на Python:

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

https://simonwillison.net/2023/Sep/30/cli-tools-python/

#python

👉 @python_real
Руководство по сериализации данных в Python

Будь вы дата-сайентист, работающий с большими данными в распределенном кластере, бэкенд-инженер, создающий масштабируемые микросервисы, или фронтенд-разработчик, использующий веб-API, вы должны понимать, что такое сериализация данных. В этом подробном руководстве вы пойдете дальше XML и JSON и исследуете несколько форматов данных, которые можно использовать для сериализации данных в Python. Вы рассмотрите их в зависимости от различных сценариев использования, познакомитесь с их уникальными категориями.

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

https://realpython.com/python-serialize-data/

#python

👉 @python_real
Генерация изображений с помощью DALL-E и API OpenAI

Опишите любое изображение, а затем позвольте компьютеру создать его за вас. То, что еще несколько лет назад казалось футуристическим, стало реальностью благодаря достижениям в области нейронных сетей и моделей скрытой диффузии (LDM). DALL-E от OpenAI произвел фурор благодаря удивительному генеративному искусству и реалистичным изображениям, которые люди создают с его помощью.

https://realpython.com/generate-images-with-dalle-openai-api/

#python

👉 @python_real
Выбор хорошего формата файла для Pandas

Прежде чем обрабатывать данные с помощью Pandas, их нужно загрузить (с диска или удаленного хранилища). Pandas поддерживает множество форматов данных: CSV, JSON, Parquet и многие другие.


import sys
import pandas as pd


df = pd.read_csv(
sys.argv[1],
dtype={
"route_id": "category",
"direction_id": "category",
"point_type": "category",
"standard_type": "category",
},
parse_dates=["service_date", "scheduled", "actual"],
)


https://pythonspeed.com/articles/best-file-format-for-pandas/

#python

👉 @python_real
Создание программы записи экрана с помощью Python

Python - это широко распространенный язык общего назначения. Он позволяет выполнять различные задачи. Одна из них - запись видео. Для этого в нем есть модуль pyautogui. Этот модуль вместе с NumPy и OpenCV позволяет манипулировать и сохранять изображения (в данном случае скриншот)

https://www.geeksforgeeks.org/create-a-screen-recorder-using-python/

#python

👉 @python_real
Ловушки, в которые попадают неопытные Python-разработчики

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

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

https://docs.python-guide.org/writing/gotchas/

#python

👉 @python_real
Как мы решали вопрос многоязычности в боте

Ранее в статье Как мы запускали серьезный проект в Telegram я рассказал общую информацию о моем телеграм-бот проекте World for Life Bot

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

https://habr.com/ru/articles/785582/

#python

👉 @python_real
Возможности для молодых людей в «Алабуге»

В особой экономической зоне «Алабуга» активно развивается лидерская программа «100 Лидеров». В ней могут поучаствовать молодые специалисты от 19 до 29 лет.

У участников есть возможность познакомиться с топ-менеджерами компании, поиграть в бизнес-игры, пройти собеседования с реальным шансом трудоустройства в компанию «Алабуга».

Питание и проживание за счет компании.

Работа в «Алабуге» - это зарплата от 78 до 200 тысяч рублей и участие в реализации проектов мирового уровня.

Следующий поток - с 28 по 31 октября!
Заявку можно подать на сайте.
Параллелизм, конкурентность и AsyncIO в Python — на примерах

Эта статья рассматривает, как ускорить операции, ограниченные процессором (CPU-bound) и вводом-выводом (IO-bound), с помощью многопроцессорности, многопоточности и AsyncIO.


# tasks.py

import os
from multiprocessing import current_process
from threading import current_thread

import requests


def make_request(num):
# io-bound

pid = os.getpid()
thread_name = current_thread().name
process_name = current_process().name
print(f"{pid} - {process_name} - {thread_name}")

requests.get("https://httpbin.org/ip")


async def make_request_async(num, client):
# io-bound

pid = os.getpid()
thread_name = current_thread().name
process_name = current_process().name
print(f"{pid} - {process_name} - {thread_name}")

await client.get("https://httpbin.org/ip")


def get_prime_numbers(num):
# cpu-bound

pid = os.getpid()
thread_name = current_thread().name
process_name = current_process().name
print(f"{pid} - {process_name} - {thread_name}")

numbers = []

prime = [True for i in range(num + 1)]
p = 2

while p * p <= num:
if prime[p]:
for i in range(p * 2, num + 1, p):
prime[i] = False
p += 1

prime[0] = False
prime[1] = False

for p in range(num + 1):
if prime[p]:
numbers.append(p)

return numbers


https://testdriven.io/blog/python-concurrency-parallelism/

#python

👉 @python_real
Ваши генераторные выражения сломаны: чиним и разбираемся

Всем привет! Меня зовут Ефимов Михаил, я профессиональный разработчик с 2010 года и начинающий contributor в CPython.

Итак, название статьи говорит, что генераторные выражения сломаны. О чем вообще речь? Посмотрим на такой код, не содержащий никаких import:


g = (x for x in range(10))
g.gi_frame.f_locals['.0'] = range(20)
list(g)

https://habr.com/ru/articles/853864/


#python

👉 @python_real
Ускоряем анализ данных в 170 000 раз с помощью Python

В статье «Ускоряем анализ данных в 180 000 раз с помощью Rust» показано, как неоптимизированный код на Python, после переписывания и оптимизации на Rust, ускоряется в 180 000 раз. Автор отмечает: «есть множество способов сделать код на Python быстрее, но смысл этого поста не в том, чтобы сравнить высокооптимизированный Python с высокооптимизированным Rust. Смысл в том, чтобы сравнить "стандартный-Jupyter-notebook" Python с высокооптимизированным Rust».

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

https://sidsite.com/posts/python-corrset-optimization/

#python

👉 @python_real
Python Debugging Handbook - Как отлаживать код на Python

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

https://www.freecodecamp.org/news/python-debugging-handbook/

#python

👉 @python_real
Основы работы с декораторами Python

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

https://realpython.com/primer-on-python-decorators/

#python

👉 @python_real
В поиске собственных значений (матриц)

Как найти собственные числа и собственные значения матрицы? Методы, излагаемые в курсе линейной алгебры, основанные на определении — применимы ли они к реальным данным? Существует ли простой алгоритм поиска этих величин, который можно понять, а не просто поверить?

https://habr.com/ru/companies/ruvds/articles/845652/

#python

👉 @python_real
Лучшие практики структурирования проекта Django

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

https://itnext.io/best-practices-for-structuring-a-django-project-23b8c1181e3f

#python

👉 @python_real
Сборщик мусора CPython и его влияние на производительность приложения

В прошлом я уже публиковал детальный разбор кода сборщика мусора CPython, однако стоит также дать более высокоуровневое объяснение механизмов управления памятью в CPython, не затрагивая сам код. Этому и будет посвящена данная статья. Статья в основном будет посвящена циклическому сборщику мусора (GC), как и когда он запускается и его влиянию на производительность приложений.

https://habr.com/ru/companies/beget/articles/860406/

#python

👉 @python_real