Полный Дзен Пайтона в одном канале Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Регистрация в перечне РКН: https://tprg.ru/xZOL
Enum — перечисления в Python
Такой способ перечислений сегодня не самый популярный, но иногда он как нельзя кстати.
Enum (перечисления) — это класс, который содержит константы и методы для работы с ними. Он "ограничивает" выбор пользователя, помогает пользователю понять возможные варианты, позволяет легко добавлять или удалять значения.
Подробнее о классе рассказывают в видео. Ссылка на первоисточник: https://youtu.be/hVZ1M4Qpfx4
#видео #основы
Учим наш компьютер понимать естественный язык
В этом нам поможет open-interpreter — библиотека, которая позволяет управлять ПК с помощью обычной речи, в том числе на русском.
На видео выше можно посмотреть, как это работает на примере переключения со светлой темы на тёмную и конвертации docx-файлов в .pdf.
Репозиторий проекта: https://github.com/OpenInterpreter/open-interpreter
#библиотека #llm
Курс по создание бота для Telegram на Python
Боты в Telegram используются повсеместно: для продаж, связи с аудиторией, различных инструментариев и работе с ИИ. Поэтому скил создания таких ботов — полезный навык многим разработчикам.
Сохраняйте курс, где с нуля учат этому навыку: расскажут про общую концепцию ботов, функционал, работу с БД, Web Apps и даже проведение оплат.
Ссылка на курс
#курс #python #начинающим #ru
Когда тебе на работе дали простую задачу, но ты хочешь отдохнуть и потянуть время
#кек
10 инструментов для Python, которые улучшат ваш проект и сделают его чище
Внутри тулзы для автоматизации форматирования кода и тестирования его на первых этапах: https://tproger.ru/translations/10-paketov-python--kotorye-uluchwat-vawu-kodovuyu-bazu
@zen_of_python
Что выведет код на изображении?
Варианты ответа ниже.
#викторина
Без лишних слов: большой курс по Python для начинающих
24 урока, которые охватывают основные темы программирования на Python, помогут вам освоить язык, если только начинаете разбираться.
Cмотреть курс
#видео #курс
Разбираемся в бинарном поиске на Python
Binary Search, или бинарный поиск — это эффективный способ найти элемент в отсортированном массиве. Принцип работы основан на делении массива пополам. Алгоритм постоянно уменьшает область поиска, пока не найдёт целевой элемент или не убедится, что его в массиве нет.
Вот как это происходит шаг за шагом. Сначала находим середину массива и сравниваем средний элемент с тем, который ищем. Если он совпадает с целевым, то задача выполнена. Если нет, и целевой элемент меньше среднего, ищем в левой половине массива. Если же больше — в правой. Процесс продолжается, пока не найдем элемент или массив не закончится.
Рассмотрим пример итеративного бинарного поиска на Python:
def binary_search(arr, target):
low, high = 0, len(arr) - 1
while low <= high:
mid = (low + high) // 2
guess = arr[mid]
if guess == target:
return mid
elif guess > target:
high = mid - 1
else:
low = mid + 1
return -1
# Пример использования
arr = [1, 3, 5, 7, 9, 11, 13, 15]
target = 9
result = binary_search(arr, target)
print(f"Элемент найден на индексе: {result}" if result != -1 else "Элемент не найден")
def binary_search_recursive(arr, target, low, high):
if low > high:
return -1
mid = (low + high) // 2
guess = arr[mid]
if guess == target:
return mid
elif guess > target:
return binary_search_recursive(arr, target, low, mid - 1)
else:
return binary_search_recursive(arr, target, mid + 1, high)
# Пример использования
arr = [1, 3, 5, 7, 9, 11, 13, 15]
target = 9
result = binary_search_recursive(arr, target, 0, len(arr) - 1)
print(f"Элемент найден на индексе: {result}" if result != -1 else "Элемент не найден")
bisect
для выполнения бинарного поиска:import bisect
def binary_search_bisect(arr, x):
i = bisect.bisect_left(arr, x)
if i != len(arr) and arr[i] == x:
return i
else:
return -1
# Пример использования
arr = [2, 3, 4, 10, 40]
x = 10
result = binary_search_bisect(arr, x)
print(f"Элемент найден на индексе: {result}" if result != -1 else "Элемент не найден")
O(log n)
, что значительно быстрее линейного поиска. Это делает бинарный поиск отличным выбором для работы с большими данными.Взламываем игры с помощью Python
Многие наверняка помнят программу ArtMoney, которая позволяла взламывать игры, чтобы добавить себе денег, жизней и прочих плюшек в игре.
Сегодня вы можете сделать то же самое, но без ArtMoney, если умеете программировать на Python. Автор этой статьи так и сделал, теперь делиться результатом работы:
https://habr.com/ru/articles/835212/
А какую бы игру взломали вы и зачем?
Веб-приложения теперь можно делать на чистом Python, не хуже, чем на JavaScript
Соучредитель fast.ai Джереми Ховард выпустил FastHTML. Эта технология позволяет писать на Python полноценные веб-приложения.
Уже сейчас здесь есть и компоненты, и адаптивность. Вы можете подключать сюда как JS, так и Python модули, если требуется.
Более подробно о проекте можно узнать на сайте, который, кстати, сделан как раз с помощью FastHTML: https://fastht.ml/
#библиотека #веб
Кто знает почему так?
Загадка для внимательных. Пишите ответ в комментарии
Стать бэкенд-разработчиком или предпринимателем?
Выбор за вами, а Нетология поможет в пути! В онлайн-магистратуре Нетологии и МФТИ «Разработка IT-продукта» вы изучите основы бэкенд-программирования и получите поддержку при развитии стартапа: гранты, стипендии и консультации.
Вы научитесь разрабатывать бэкенд веб-приложений на Python, Java или Go. Разберётесь с архитектурой веб-проекта и построите функциональный API. Акцент на практике: семинары, кейсы партнёров, хакатоны и 5+ проектов для портфолио. Формат дипломной работы выбираете сами: прикладное научное исследование, корпоративный или собственный стартап.
Выпускники получат государственный диплом МФТИ — ведущего технического вуза страны. После обучения смогут развивать свой стартап или работать бэкендером — зарплаты этих специалистов одни из самых высоких в сфере.
Оставить заявку
Реклама. ООО "Нетология". ИНН 7726464125 Erid:LjN8JvFZk
Как писать чистый код на Python. Советы разработчикам
Написав несколько проектов, вы заметите, что использование паттернов и правил написания кода действительно упрощает разработку и дальнейшую поддержку. А если работаете с кем-то, то без этого вообще никуда.
В этой статье вы узнаете, что такое PEP8, poetry, как создавать архитектуру python-приложения, какие существуют методологии Driven Development и как писать чистый код на Python.
#советы #чистыйкод
10 итераторов, о которых вы могли не знать
Python позволяет легко работать с коллекциями и различными последовательностями: строками в файлах, списками, ключами, значениями в словарях и прочим. И это возможно благодаря протоколу итераторов, который, в частности, обеспечивает работу цикла for
.
Наверняка вы знаете несколько способов итерации в Python, но в этой статье представлены интересные и малоизвестные примеры:
https://habr.com/ru/post/697390/
Шпаргалка по Python для начинающих
Тут собрано более 20 страниц со шпаргалками, которые пригодятся каждому начинающему Python-разработчику и не только.
Скачивайте и сохраняйте пост в избранном
#шпаргалка
Что выведет код выше при использовании модуля collections
?
Варианты ответа ниже.
#викторина
Базовая обработка данных в Python
Ввод и вывод данных — это фундаментальные операции, необходимые для взаимодействия программы с пользователем. В Python для этих целей используются несколько встроенных функций, и давайте их детально рассмотрим.
Операторы ввода
Для приема данных от пользователя в Python используется функция input()
. Она позволяет запросить у пользователя ввод информации в виде строки.
name = input("Введите ваше имя: ")
print(f"Привет, {name}!")
input("Введите ваше имя: ")
— отображает пользователю сообщение и ждет ввода.name
.print(f"Привет, {name}!")
— выводит приветственное сообщение с именем.input()
input()
всегда возвращает строку. Если вам нужны данные другого типа (например, числа), необходимо выполнить преобразование.age = int(input("Введите ваш возраст: "))
print(f"В следующем году вам будет {age + 1} лет.")
int()
преобразует введенную строку в целое число.print()
. Она может принимать несколько аргументов и автоматически добавляет пробелы между ними.print("Привет, мир!")
name = "Анна"
age = 25
print("Имя:", name, "Возраст:", age)
print()
выведет: Имя: Анна Возраст: 25
.name = "Анна"
age = 25
print(f"Имя: {name}, Возраст: {age}")
format()
:name = "Анна"
age = 25
print("Имя: {}, Возраст: {}".format(name, age))
%
(старый способ форматирования):name = "Анна"
age = 25
print("Имя: %s, Возраст: %d" % (name, age))
print()
также может записывать данные в файл, если используется параметр file
.with open("output.txt", "w") as file:
print("Привет, мир!", file=file)
open("output.txt", "w")
открывает файл (или создает новый) для записи ("w"
).print("Привет, мир!", file=file
) записывает строку в файл вместо вывода на экран.Flask или Django: что популярнее в 2024 году
Эти два фреймворка являются основными для веб-разработки на Python. Да, есть и другие, но эти самые популярные и востребованные.
Давайте посмотрим, как они себя чувствуют в этом году, какой популярнее, у кого больше сообщество и так далее. Вся важная информация в этом материале: https://learndjango.com/tutorials/flask-vs-django
#django #flask
Текстовый редактор на Python за 40 секунд
Сможете повторить?
#видео #туториал
Создаём Telegram-бота для мониторинга погоды на Python
Небольшой гайд о том, как написать своего Telegram-бота для получения данных о погоде в любом городе.
В статье подробно рассмотрели работу с API, парсинг JSON и написали бота на асинхронной библиотеке aiogram. А после — загрузили на виртуальный сервер и запустили бота.
#туториал #бот #telegram
Автоматическая суммаризация текста на Python
Если вы хотите быстро и без труда суммаризировать текст, то воспользуйтесь библиотекой Sumy. Библиотека позволяет извлекать текст из HTML-страниц или обычных текстов, резюмировать его и делать простую оценку текста.
Команда для установки: pip install sumy
Документация: pypi.org/project/sumy/
#библиотека
Пишем простой калькулятор на Python
Внутри гайд — комментарии, инструкции и полезные советы.
@zen_of_python
Каждый третий наш читатель похож на Илона Маска…
Об этом говорят результаты теста. А на кого из лидеров технологического бизнеса похожи вы? Ответьте всего на девять вопросов и узнайте!
Реклама
Трёхстраничная шпаргалка по REST API, с помощью которой вы узнаете:
— как называются части URL в контексте запроса;
— зачем нужны те или иные заголовки запросов (например, Accept-Charset / User-Agent);
— чем отличается код 300 от 500
#api #шпаргалка
А кто это тут у нас ищет работу на бэкенде?
Держи вариант, как раз для тебя. Сбер ищет таланты для работы над передовыми системами передачи данных. Если ты обладаешь опытом в Python, Golang или C++ и хочешь стать частью крутой команды, то это шанс для тебя!
Стабильный доход, социальная поддержка, корпоративное обучение — всё это прилагается. Остальные подробности смотри в вакансии: https://tprg.ru/lzCZ
#вакансии
Асинхронность, многопоточность и многопроцессность в python
Хоть Python пока и не стал по-настоющему многопоточным, как нам обещают в Python 3.13, кое-что он всё же может.
С помощью этого видео вы сможете разобраться в том:
— что такое асинхронное программирование;
— какие есть виды многозадачности при проектировании приложения;
— узнать про процессы, потоки и асинхронный код.
https://youtu.be/_4QY1nGFRY8
#видео #многопоточность
Что произойдет, если попытаться выполнить следующий код для изменения элемента в кортеже?
Варианты ответа ниже.
#викторина
В Python слишком много менеджеров пакетов?
В отличие от JavaScript, C#, Dart или Rust, где есть стандартизированные менеджеры пакетов типа npm, NuGet, pub или Cargo, Python стандарты обошли стороной. У него есть целый ворох менеджеров, например, pip, venv, conda и др.
Хорошо это или плохо? Автор этой статьи попробовал разобраться в этом вопрос, попутно разобрав популярные менеджеры для Python:
https://dublog.net/blog/so-many-python-package-managers/
А вы за обилие вариантов или мечтаете о стандартизации?
Делаем полнотекстовый поиск на Python из 150 строк
Полнотекстовый поиск используется повсюду. Именно с помощью него вы можете без труда быстро находить нужную информацию за доли секунд.
Здесь вы узнаете, как работает полнотекстовый поиск, на каких компонентах он основан, а также сможет изучить простой код для его реализации:
https://bart.degoe.de/building-a-full-text-search-engine-150-lines-of-code/