zen_of_python | Unsorted

Telegram-канал zen_of_python - Zen of Python

20144

Полный Дзен Пайтона в одном канале Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Регистрация в перечне РКН: https://tprg.ru/xZOL

Subscribe to a channel

Zen of Python

Enum — перечисления в Python

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

Enum (перечисления) — это класс, который содержит константы и методы для работы с ними. Он "ограничивает" выбор пользователя, помогает пользователю понять возможные варианты, позволяет легко добавлять или удалять значения.

Подробнее о классе рассказывают в видео. Ссылка на первоисточник: https://youtu.be/hVZ1M4Qpfx4

#видео #основы

Читать полностью…

Zen of Python

Учим наш компьютер понимать естественный язык

В этом нам поможет open-interpreter — библиотека, которая позволяет управлять ПК с помощью обычной речи, в том числе на русском.

На видео выше можно посмотреть, как это работает на примере переключения со светлой темы на тёмную и конвертации docx-файлов в .pdf. 

Репозиторий проекта: https://github.com/OpenInterpreter/open-interpreter

#библиотека #llm

Читать полностью…

Zen of Python

Курс по создание бота для Telegram на Python

Боты в Telegram используются повсеместно: для продаж, связи с аудиторией, различных инструментариев и работе с ИИ. Поэтому скил создания таких ботов — полезный навык многим разработчикам.

Сохраняйте курс, где с нуля учат этому навыку: расскажут про общую концепцию ботов, функционал, работу с БД, Web Apps и даже проведение оплат.

Ссылка на курс

#курс #python #начинающим #ru

Читать полностью…

Zen of Python

Когда тебе на работе дали простую задачу, но ты хочешь отдохнуть и потянуть время

#кек

Читать полностью…

Zen of Python

10 инструментов для Python, которые улучшат ваш проект и сделают его чище

Внутри тулзы для автоматизации форматирования кода и тестирования его на первых этапах: https://tproger.ru/translations/10-paketov-python--kotorye-uluchwat-vawu-kodovuyu-bazu

@zen_of_python

Читать полностью…

Zen of Python

Что выведет код на изображении?

Варианты ответа ниже.

#викторина

Читать полностью…

Zen of Python

Без лишних слов: большой курс по Python для начинающих

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

Cмотреть курс

#видео #курс

Читать полностью…

Zen of Python

Разбираемся в бинарном поиске на 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), что значительно быстрее линейного поиска. Это делает бинарный поиск отличным выбором для работы с большими данными.

#советы #алгоритмы

Читать полностью…

Zen of Python

Взламываем игры с помощью Python

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

Сегодня вы можете сделать то же самое, но без ArtMoney, если умеете программировать на Python. Автор этой статьи так и сделал, теперь делиться результатом работы:

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

А какую бы игру взломали вы и зачем?

Читать полностью…

Zen of Python

Веб-приложения теперь можно делать на чистом Python, не хуже, чем на JavaScript

Соучредитель fast.ai Джереми Ховард выпустил FastHTML. Эта технология позволяет писать на Python полноценные веб-приложения.

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

Более подробно о проекте можно узнать на сайте, который, кстати, сделан как раз с помощью FastHTML: https://fastht.ml/

#библиотека #веб

Читать полностью…

Zen of Python

Кто знает почему так?
Загадка для внимательных. Пишите ответ в комментарии

Читать полностью…

Zen of Python

Стать бэкенд-разработчиком или предпринимателем?

Выбор за вами, а Нетология поможет в пути! В онлайн-магистратуре Нетологии и МФТИ «Разработка IT-продукта» вы изучите основы бэкенд-программирования и получите поддержку при развитии стартапа: гранты, стипендии и консультации.

Вы научитесь разрабатывать бэкенд веб-приложений на Python, Java или Go. Разберётесь с архитектурой веб-проекта и построите функциональный API. Акцент на практике: семинары, кейсы партнёров, хакатоны и 5+ проектов для портфолио. Формат дипломной работы выбираете сами: прикладное научное исследование, корпоративный или собственный стартап. 

Выпускники получат государственный диплом МФТИ — ведущего технического вуза страны. После обучения смогут развивать свой стартап или работать бэкендером — зарплаты этих специалистов одни из самых высоких в сфере.

Оставить заявку

Реклама. ООО "Нетология". ИНН 7726464125 Erid:LjN8JvFZk

Читать полностью…

Zen of Python

Как писать чистый код на Python. Советы разработчикам

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

В этой статье вы узнаете, что такое PEP8, poetry, как создавать архитектуру python-приложения, какие существуют методологии Driven Development и как писать чистый код на Python.

#советы #чистыйкод

Читать полностью…

Zen of Python

10 итераторов, о которых вы могли не знать

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

Наверняка вы знаете несколько способов итерации в Python, но в этой статье представлены интересные и малоизвестные примеры:

https://habr.com/ru/post/697390/

Читать полностью…

Zen of Python

Шпаргалка по Python для начинающих

Тут собрано более 20 страниц со шпаргалками, которые пригодятся каждому начинающему Python-разработчику и не только. 

Скачивайте и сохраняйте пост в избранном

#шпаргалка

Читать полностью…

Zen of Python

Что выведет код выше при использовании модуля collections?

Варианты ответа ниже.

#викторина

Читать полностью…

Zen of Python

Базовая обработка данных в Python

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

Операторы ввода

Для приема данных от пользователя в Python используется функция input(). Она позволяет запросить у пользователя ввод информации в виде строки.

name = input("Введите ваше имя: ")
print(f"Привет, {name}!")


В этом примере:
1. input("Введите ваше имя: ") — отображает пользователю сообщение и ждет ввода.
2. Введенная строка сохраняется в переменную name.
3. print(f"Привет, {name}!") — выводит приветственное сообщение с именем.

Преобразование данных из input()

Важно помнить, что функция input() всегда возвращает строку. Если вам нужны данные другого типа (например, числа), необходимо выполнить преобразование.

age = int(input("Введите ваш возраст: "))
print(f"В следующем году вам будет {age + 1} лет.")


Здесь int() преобразует введенную строку в целое число.

Операторы вывода

В Python для вывода данных на экран используется функция print(). Она может принимать несколько аргументов и автоматически добавляет пробелы между ними.

print("Привет, мир!")


Этот код просто выводит строку "Привет, мир!".

name = "Анна"
age = 25
print("Имя:", name, "Возраст:", age)


В этом примере print() выведет: Имя: Анна Возраст: 25.

Форматирование строк

Для более контролируемого и удобного вывода часто используется строковое форматирование. В Python существует несколько способов форматирования строк.

Использование f-строк (форматирование строк с помощью f-строк):
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)


Здесь:
1. open("output.txt", "w") открывает файл (или создает новый) для записи ("w").
2. print("Привет, мир!", file=file) записывает строку в файл вместо вывода на экран.

Понимание этих функций и умение их использовать эффективно — первый шаг к написанию полезных и интерактивных программ.

#советы #основы

Читать полностью…

Zen of Python

Flask или Django: что популярнее в 2024 году

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

Давайте посмотрим, как они себя чувствуют в этом году, какой популярнее, у кого больше сообщество и так далее. Вся важная информация в этом материале: https://learndjango.com/tutorials/flask-vs-django

#django #flask

Читать полностью…

Zen of Python

Текстовый редактор на Python за 40 секунд

Сможете повторить?

#видео #туториал

Читать полностью…

Zen of Python

Создаём Telegram-бота для мониторинга погоды на Python

Небольшой гайд о том, как написать своего Telegram-бота для получения данных о погоде в любом городе.

В статье подробно рассмотрели работу с API, парсинг JSON и написали бота на асинхронной библиотеке aiogram. А после — загрузили на виртуальный сервер и запустили бота.

#туториал #бот #telegram

Читать полностью…

Zen of Python

Автоматическая суммаризация текста на Python

Если вы хотите быстро и без труда суммаризировать текст, то воспользуйтесь библиотекой Sumy. Библиотека позволяет извлекать текст из HTML-страниц или обычных текстов, резюмировать его и делать простую оценку текста. 

Команда для установки: pip install sumy
Документация: pypi.org/project/sumy/

#библиотека

Читать полностью…

Zen of Python

​​Пишем простой калькулятор на Python

Внутри гайд — комментарии, инструкции и полезные советы.

@zen_of_python

Читать полностью…

Zen of Python

Каждый третий наш читатель похож на Илона Маска

Об этом говорят результаты теста. А на кого из лидеров технологического бизнеса похожи вы? Ответьте всего на девять вопросов и узнайте!

Реклама

Читать полностью…

Zen of Python

Трёхстраничная шпаргалка по REST API, с помощью которой вы узнаете:

— как называются части URL в контексте запроса;
— зачем нужны те или иные заголовки запросов (например, Accept-Charset / User-Agent);
— чем отличается код 300 от 500

#api #шпаргалка

Читать полностью…

Zen of Python

А кто это тут у нас ищет работу на бэкенде?

Держи вариант, как раз для тебя. Сбер ищет таланты для работы над передовыми системами передачи данных. Если ты обладаешь опытом в Python, Golang или C++ и хочешь стать частью крутой команды, то это шанс для тебя!

Стабильный доход, социальная поддержка, корпоративное обучение — всё это прилагается. Остальные подробности смотри в вакансии: https://tprg.ru/lzCZ

#вакансии

Читать полностью…

Zen of Python

Асинхронность, многопоточность и многопроцессность в python

Хоть Python пока и не стал по-настоющему многопоточным, как нам обещают в Python 3.13, кое-что он всё же может.

С помощью этого видео вы сможете разобраться в том:

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

https://youtu.be/_4QY1nGFRY8

#видео #многопоточность

Читать полностью…

Zen of Python

Что произойдет, если попытаться выполнить следующий код для изменения элемента в кортеже?

Варианты ответа ниже.

#викторина

Читать полностью…

Zen of Python

В Python слишком много менеджеров пакетов?

В отличие от JavaScript, C#, Dart или Rust, где есть стандартизированные менеджеры пакетов типа npm, NuGet, pub или Cargo, Python стандарты обошли стороной. У него есть целый ворох менеджеров, например, pip, venv, conda и др.

Хорошо это или плохо? Автор этой статьи попробовал разобраться в этом вопрос, попутно разобрав популярные менеджеры для Python:

https://dublog.net/blog/so-many-python-package-managers/

А вы за обилие вариантов или мечтаете о стандартизации?

Читать полностью…

Zen of Python

Что выведет следующий код?

#викторина

Читать полностью…

Zen of Python

Делаем полнотекстовый поиск на Python из 150 строк

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

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

https://bart.degoe.de/building-a-full-text-search-engine-150-lines-of-code/

Читать полностью…
Subscribe to a channel