About Python [ru]
6.36K subscribers
314 photos
1 video
1.65K links
Все о Python: алгоритмы, паттерны проектирования, задачи, нейронные сети

Канал на бирже - https://telega.in/c/python_tesst

По вопросам рекламы или разработки: @g_abashkin
Download Telegram
👩‍💻 Pydantic 2: Полное руководство для Python-разработчиков — от основ до продвинутых техник

Узнаем, почему эта библиотека стала незаменимой в 30% Python-проектов и как она упрощает работу с данными. От базовых концепций до продвинутых техник – мы охватим всё, что нужно знать современному Python-разработчику.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Встроенные механизмы безопасности фреймворков Python

В этой статье попробуем разобраться, какие возможности действительно предоставляют фреймворки, рассмотрим механизмы безопасности и способы их настройки на примере распространенных фреймворков: Django, FastAPI и Flask.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Создаём свой реестр данных на основе ФГИС «Аршин». Часть 1 — добавляем данные в PostgreSQL и сокращаем размер БД

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Задачка по Python

Создайте Python-приложение, которое будет обрабатывать CSV-файл с данными о продажах (имя продавца, товар, сумма) и генерировать сводный отчёт по каждому продавцу с общей суммой продаж. Программа должна сохранять отчёт в файл sales_summary.csv.

➡️ Пример:

python app.py sales_report sales.csv — генерирует сводный отчёт по продажам.

Решение задачи ⬇️

import csv
import sys
from collections import defaultdict

def generate_sales_report(input_file):
sales_summary = defaultdict(float)

with open(input_file, 'r') as file:
reader = csv.reader(file)
for row in reader:
seller, item, amount = row
sales_summary[seller] += float(amount)

with open('sales_summary.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerow(['Seller', 'Total Sales'])
for seller, total_sales in sales_summary.items():
writer.writerow([seller, total_sales])

if __name__ == "__main__":
if len(sys.argv) != 3 or sys.argv[1] != 'sales_report':
print('Использование: python
app.py sales_report <файл.csv>')
else:
generate_sales_report(sys.argv[2])
Please open Telegram to view this post
VIEW IN TELEGRAM
🔎 Подборка вакансий для джунов

Junior-разработчик
🟢Уровень дохода не указан | Без опыта

Младший Back-end разработчик
🟢Python, Golang
🟢от 80 000 до 100 000 ₽ | Без опыта

Python developer Junior + / Middle
🟢Python 3.7-11, Flask, Asyncio, Websockets...
🟢Уровень дохода не указан | 1–3 года

Программист Python junior
🟢Python (asyncio, aiohttp, Tornado)
🟢от 80 000 до 100 000 | 1–3 года

Junior Python Backend Developer
🟢Python 3, Django, Celery, Aiohttp, Docker, MySQL...
🟢Уровень дохода не указан | 1–3 года
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Задачка по Python

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

➡️ Пример:

python app.py 15 — выводит 17.

Решение задачи ⬇️

import sys

def is_prime(n):
if n < 2:
return False
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True

def next_prime(n):
while not is_prime(n):
n += 1
return n

if __name__ == "__main__":
if len(sys.argv) != 2:
print("Использование: python
app.py <число>")
else:
num = int(sys.argv[1])
print(f'Ближайшее простое число: {next_prime(num)}')
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Чем отличаются shallow copy (поверхностное копирование) и deep copy (глубокое копирование) в Python?

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

➡️ Пример:
import copy

original = [[1, 2, 3], [4, 5, 6]]
shallow = copy.copy(original)
deep = copy.deepcopy(original)

original[0][0] = 99

print(shallow) # [[99, 2, 3], [4, 5, 6]]
print(deep) # [[1, 2, 3], [4, 5, 6]]


🗣️ Используйте deepcopy, когда вам нужно полностью изолировать изменения от оригинального объекта.


🖥 Подробнее тут
Please open Telegram to view this post
VIEW IN TELEGRAM
🔎 Подборка вакансий для мидлов

Преподаватель Python
🟢Python, Git, SQLite, Django, Pygame
🟢до 100 000 ₽ | Без опыта

Trainee/Intern/Junior Python backend developer
🟢от 20 000 до 40 000 ₽ | Без опыта

Junior Web реверс-инженер (Красноярск)
🟢Linux, Python, TCP/IP, HTTP
🟢Уровень дохода не указан | Без опыта

Стажер-программист Rust в блокчейн-стартап
🟢Python, Golang, rust
🟢от 800 до 1 000 $ | Без опыта

Программист-разработчик (начинающий Junior)
🟢Python, JS, SQL
🟢от 30 000 ₽ | Без опыта
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Как создать свой реестр для хостинга Docker-контейнеров

Хочешь полностью контролировать свои Docker-образы? Мы расскажем, как создать и настроить личный реестр контейнеров, идеально подходящий для твоих задач.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Задачка по Python

Создайте Python-приложение, которое принимает строку и определяет частоту встречаемости каждого символа в этой строке. Программа должна выводить результаты в консоль и сохранять их в файл char_count.json.

➡️ Пример:

python app.py count "Hello, World!" — выводит количество каждого символа и сохраняет в char_count.json.

Решение задачи ⬇️

import json
import sys
from collections import Counter

def count_chars(text):
count = Counter(text)
print(count)
with open('char_count.json', 'w') as f:
json.dump(count, f)

if __name__ == "__main__":
if len(sys.argv) > 1:
count_chars(sys.argv[1])
else:
print("Укажите строку для подсчета символов.")
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Оптимизируй свой AI: разоблачение 6 мифов о работе с векторами в Pgvector

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🔎 Подборка вакансий для сеньоров

Senior Python Developer
🟢Python (Django), PL/pgSQL, SQL
🟢Уровень дохода не указан | 3–6 лет

Python Developer
🟢Python; Django, django_rq, PostgreSQL, Redis, GitHub, Jira
🟢Уровень дохода не указан | 3–6 лет

Full-stack разработчик (stack: next/python)
🟢Next, HTML, CSS, JavaScript, Python, Django, REST API, Node.js, SQL
🟢от 100 000 до 200 000 ₽ | 3–6 лет

Python developer (Middle\Senior)
🟢Python, Flask, FastAPI, PostgreSQL, ClickHouse, Airflow, Docker, Git
🟢Уровень дохода не указан | 3–6 лет

Python-разработчик (middle+,senior)
🟢Python, C++, ML, CI/CD, Docker, SMPL
🟢от 150 000 до 250 000 ₽ | 3–6 лет
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Эксперимент: даём ChatGPT полный доступ к компьютеру

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Как работает менеджер контекста (context manager) в Python?

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

➡️ В этом примере показано, как использовать менеджер контекста для работы с файлами:
with open('file.txt', 'r') as file:
content = file.read()

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

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


🖥 Подробнее тут
Please open Telegram to view this post
VIEW IN TELEGRAM
🔎 Подборка вакансий для лидов

Tech Lead QAA Python в 2GIS.PRO
🟢Python, Playwright, Allure TestOps, Gitlab, CI/CD, Kubernetes
🟢Уровень дохода не указан | 3–6 лет

Tech Lead (Python)
🟢Python, Django, Celery, HTTP/REST API, Sentry, ELK (Elasticsearch, Kibana), New Relic, OpenTelemetry, Docker, Kubernetes, Kafka, RabbitMQ, Grafana, Redash
🟢Уровень дохода не указан | 3–6 лет

Tech Lead Python
🟢Python, FastAPI, Flask, Django, NoSQL
🟢Уровень дохода не указан | Более 6 лет

Tech Lead (Python)
🟢Python, Linux, Nginx, Docker, Asyncio, aiohttp, Squid
🟢Уровень дохода не указан | 3–6 лет
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Деплой без стресса: автоматизируем процесс для Telegram-ботов

В статье рассказывается, как настроить автоматический деплой Telegram-бота на сервер с использованием GitHub Actions. Это поможет ускорить обновление кода и минимизировать ошибки при ручной загрузке.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
💡 Карьера — это не про «идеальную работу», а про опыт и умение адаптироваться

В мире, где всё меняется быстрее, чем ты успеваешь обновлять резюме, держаться за одну карьерную траекторию — всё равно что пытаться угнаться за горизонтом. Умение перестраиваться, пробовать новое и брать на себя задачи, которые немного пугают, — вот что реально важно. И это не про «выйди из зоны комфорта», а про осознанный выбор расти и не цепляться за привычное.

🎯 Что делать: пообщайся с коллегой из другой области, возьми на себя один проект вне своей зоны, попробуй новый инструмент или язык, устрой «ревизию» навыков — что сейчас реально работает на тебя, а что пора обновить? Простые шаги, но каждый — ключ к росту и новым возможностям.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔎 Подборка валютных вакансий

Middle Backend Developer (Python)
🟢Python, FastAPI, Tornado, PostgreSQL, SQLAlchemy, Redis, RabbitMQ, Docker, nginx, gitlab-ci
🟢от 2 000 до 3 300 $ | 3–6 лет

Python Developer (Senior/Middle)
🟢Python, Django, Django REST Framework, Django ORM, Vue.js, Git, GitLab, PostgreSQL, Linux, SQL
🟢от 1 200 $ | 3–6 лет

Senior backend developer - Python
🟢Python, PostgreSQL, Redis, FastAPI, Flask, Pyramid, SQLAlchemy, Celery, Pydantic, AWS
🟢от 4 000 $ | Более 6 лет

QA manual/Продакт Разработчик операций AI
🟢Python, SQL, Aiogram, GPT, PostgreSQL, CRM
🟢от 800 до 1 300 $ | 1–3 года
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Как простая задачка поставила в тупик программистов (и как они из него выбрались)

В 2010 году пользователь Stack Overflow не справился с задачей на собеседовании. Обсуждение способов решения этого задания стало одной из самых популярных тем на платформе.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM