Python академия
Open in Telegram
Учи Python быстро и легко. Ежедневно публикуем практические задачи, разборы, готовые решения, объяснения логики, советы по алгоритмам. ✔ Подходит для прокачки навыков кодирования. По всем вопросам @evgenycarter
Show more7 103
Subscribers
+124 hours
-117 days
-3030 days
Loading data
Similar Channels
Tags Cloud
Incoming and Outgoing Mentions
---
---
---
---
---
---
Attracting Subscribers
October '26Oct '26
October '26
+29
in 0 channels
September '26
+27
in 0 channels
Get PRO
August '26
+35
in 0 channels
Get PRO
July '26
+21
in 0 channels
Get PRO
June '26
+34
in 0 channels
Get PRO
May '26
+36
in 0 channels
Get PRO
April '26
+35
in 0 channels
Get PRO
March '26
+34
in 0 channels
Get PRO
February '26
+32
in 0 channels
Get PRO
January '26
+35
in 1 channels
Get PRO
December '25
+51
in 0 channels
Get PRO
November '25
+82
in 31 channels
Get PRO
October '25
+51
in 0 channels
Get PRO
September '25
+104
in 36 channels
Get PRO
August '25
+71
in 0 channels
Get PRO
July '25
+108
in 27 channels
Get PRO
June '25
+101
in 19 channels
Get PRO
May '25
+122
in 44 channels
Get PRO
April '25
+186
in 37 channels
Get PRO
March '25
+151
in 38 channels
Get PRO
February '25
+188
in 31 channels
Get PRO
January '25
+169
in 34 channels
Get PRO
December '24
+176
in 34 channels
Get PRO
November '24
+169
in 32 channels
Get PRO
October '24
+210
in 29 channels
Get PRO
September '24
+254
in 28 channels
Get PRO
August '24
+115
in 17 channels
Get PRO
July '24
+98
in 0 channels
Get PRO
June '24
+124
in 23 channels
Get PRO
May '24
+134
in 18 channels
Get PRO
April '24
+128
in 0 channels
Get PRO
March '24
+185
in 20 channels
Get PRO
February '24
+143
in 17 channels
Get PRO
January '24
+246
in 23 channels
Get PRO
December '23
+186
in 23 channels
Get PRO
November '23
+147
in 16 channels
Get PRO
October '23
+203
in 18 channels
Get PRO
September '23
+213
in 0 channels
Get PRO
August '23
+156
in 0 channels
Get PRO
July '23
+167
in 0 channels
Get PRO
June '23
+190
in 0 channels
Get PRO
May '23
+186
in 0 channels
Get PRO
April '23
+228
in 0 channels
Get PRO
March '23
+70
in 0 channels
Get PRO
February '23
+116
in 0 channels
Get PRO
January '23
+208
in 0 channels
Get PRO
December '22
+241
in 0 channels
Get PRO
November '22
+207
in 0 channels
Get PRO
October '22
+413
in 0 channels
Get PRO
September '22
+479
in 0 channels
Get PRO
August '22
+479
in 0 channels
Get PRO
July '22
+600
in 0 channels
Get PRO
June '22
+481
in 0 channels
Get PRO
May '22
+630
in 0 channels
Get PRO
April '22
+946
in 0 channels
Get PRO
March '22
+1 344
in 0 channels
Get PRO
February '22
+1 103
in 0 channels
| Date | Subscriber Growth | Mentions | Channels | |
| 27 October | 0 | |||
| 26 October | +3 | |||
| 25 October | +1 | |||
| 24 October | 0 | |||
| 23 October | +2 | |||
| 22 October | 0 | |||
| 21 October | 0 | |||
| 20 October | +3 | |||
| 19 October | +2 | |||
| 18 October | 0 | |||
| 17 October | +1 | |||
| 16 October | +2 | |||
| 15 October | +2 | |||
| 14 October | +1 | |||
| 13 October | 0 | |||
| 12 October | 0 | |||
| 11 October | +2 | |||
| 10 October | +1 | |||
| 09 October | 0 | |||
| 08 October | 0 | |||
| 07 October | +3 | |||
| 06 October | +1 | |||
| 05 October | +1 | |||
| 04 October | +2 | |||
| 03 October | +1 | |||
| 02 October | 0 | |||
| 01 October | +1 |
Channel Posts
Библиотека FuzzyWuzzy
Интересная и полезная библиотека поиска совпадений в тексте. Очень поможет вам при работе над общающимися ботами: голосовыми или текстовыми помощниками.
Разумеется, это один из инструментов, всегда можно использовать другой, но я лично пользуюсь этим.
Библиотеку следует установить:
install fuzzywuzzy
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff
| 2 | Как округлить до тысячных в python?
Вы можете использовать round()
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 222 |
| 3 | Разница между == и is
Недавно в чате наши подписчики затрагивали эту тему, поэтому мы решили разложить всё по полочкам, чтобы в дальнейшем не возникало вопросов.
Итак, оператор == проверяет равенство значений двух объектов. А оператор is в свою очередь проверяет идентичность самих объектов. Его используют, чтобы удостовериться, что переменные указывают на один и тот же объект в памяти.
Однако Python в целях производительности кеширует короткие строки и малые целые числа, поэтому возможны некоторые казусы, как в примере.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 286 |
| 4 | Сборка exe файлов - pyinstaller
Если вы просто скопируете проект, то он не будет работать на других системах где нет установленного Python, а если есть, то возможно там отсутствуют нужные библиотеки. Но можно создать исполняемый файл exe, который запустится и без Python. Необходимо установить pyinstaller:
install pyinstaller
Затем перейти в командную строку, и перейти в нужную директорию с помощью команды cd. Далее напишем такой код:
--onefile --noconsole main.py
--onefile - означает, что будет только один исполняемый файл.
--noconsole - консоль не будет запускаться при открытии
main.py - файл, при запуске которого начинает работать ваша программа
В папке dist будет лежать нужный файл, остальные созданные папки можно удалить
Внимание! С помощью данного метода не получится скрыть ваш код, так же вы не получите прироста в скорости работы программы.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 439 |
| 5 | 💻 Зависимости Python-проекта можно устанавливать и обновлять быстрее — если правильно настроить инструменты.
На открытом уроке разберём uv — современный инструмент для управления Python-проектами и зависимостями.
🔥 Вы на практике:
— изучите ключевые концепции uv;
— разберёте основные команды для управления проектом и зависимостями;
— узнаете, как использовать uv при сборке Docker-образов;
— поймёте, как применять uv в своих проектах.
В результате сможете увереннее работать с зависимостями, улучшить удобство разработки и ускорить сборку проекта.
Урок будет полезен всем, кто использует Python и хочет освоить современный инструмент uv.
Открытый урок проходит в преддверии старта курса «Python-разработчик. Продвинутый уровень».
⏰ 29 октября в 20:00 МСК. Участие бесплатно: https://vk.cc/d36wwr
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru | 361 |
| 6 | Итерирование с использованием функции enumerate
Функция range позволяет получить только индексы элементов списка. Функция enumerate генерирует кортежи, состоящие из двух элементов – индекса элемента и самого элемента. Эти кортежи можно распаковать еще в заголовке for
Получается короткий и понятный код!
В примере разберем как извлечь из списка элементы и их индекс, рис.1.
Еще одной полезной и крутой фишкой этой функции будет легкое создания счетчика. Более того, мы можем установить первоначальное значение счетчика, рис. 2.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 323 |
| 7 | Модуль zipfile
Как говорилось ранее с zip может работать модуль shutil, но zipfile более многофункционален. С другой стороны он не так универсален и работает только с зипами. За все надо платить, не существует идеального способа для всего.
Для начала надо из zipfile импортировать ZipFile. И открыть файл ZipFile(file).
printdir() - вывод списка содержимого текстом для печати.
namelist() - вывод списка фалов списком.
open() - открыть файл внутри архива, далее работа проходит аналогично работе фалов.
Для практики на картинке показана программа выводящая красивый вложенный список файлов находящихся в архиве.
Больше возможностей можно узнать через help() или документацию.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 362 |
| 8 | 🤔 API работает — но как убедиться, что после очередного изменения оно продолжит работать корректно?
На открытом уроке разберём, как автоматизировать проверку FastAPI-приложений с помощью pytest и TestClient.
🔥Вы на практике:
— отправите запросы к приложению через TestClient;
— напишете тесты для корректных и некорректных данных;
— проверите HTTP-статусы и содержимое JSON;
— разберётесь, как подменять зависимости приложения для проверки нужного поведения.
Урок будет полезен Python-разработчикам, которые уже создают API, и начинающим разработчикам серверной части, которые пока тестируют приложения вручную.
Открытый урок проходит в преддверии старта курса «Python-разработчик».
⏰26 октября в 20:00 МСК. Принять участие: https://vk.cc/d2UR9D
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576 | 455 |
| 9 | Модуль shutil
Очень смешное название, но библиотека является мощным инструментом для обработки файлов. В прошлом посте говорилось о модуль os. Надо учитывать, что многие задачи решить через него можно, но придется постараться.
Программисты комбинируют os и shutil для достижения наиболее красивого и эффективного кода.
shutil.copyfileobj(fsrc, fdst) - копирует один файл в другой.
shutil.copymode(fsrc, fdst) - копирует права доступа из одного файла в другой.
shutil.copystat(fsrc, fdst) - копирует дату последнего доступа и изменения из одного файла в другой.
Библиотека позволяет так же работать с архивами shutil.get_archive_formats(), чтобы узнать доступные для работы архивы.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 421 |
| 10 | Обработка строки
Полезные функции для работы со строками. Python известен тем, что можно написать код в одну строчку использованием метода вместо перебора списком.
Перечислим наиболее полезные методы:
capitalize() - первая буква большая, остальные маленькие
strip() - удаление пробелов в начале и конце
center(int, chr='') - отцентрирует текст, int - нужное кол-во символов в строке, а chr - символ для добавления в начало и конец
swapcase() - заглавные буквы в прописные, маленькие в большие
lower() - преобразует к нижнему регистру
upper() - преобразует к верхнему регистру
При написании нейронок и ботов обязательно приводите все к нижнему регистру с помощью lower(). При написании ботов часто использую center(), для красивого вывода.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 393 |
| 11 | Потоковый ввод
Вы можете обрабатывать ввод от пользователя потоком. В таком случае для завершения надо воспользоваться специальной "командой" на Windows — Ctrl + D. Запустить потоковый ввод можно через библиотеку sys и метод stdin.
Если требуется получить и тут же обработать строку, то так и пишем: sys.stdin
Если надо в начале прочитать весь потоковый ввод, а затем обработать, то sys.stdin.readlines()
На картинке представлено 2 варианта.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 375 |
| 12 | Библиотека showballstemmer
Работали когда-нибудь над поисковиками? Хороший поисковик должен много чего уметь, например, находить по минимальному запросу.
Некоторые используют pymorph2 (первая слишком много потребляет ресурсов), но ведь достаточно определять основу слова, а не начальную форму для нахождения большинства результатов.
Библиотека showballstemmer и занимается тем, что определяет основу слова, что делает поиск более точным. А главное — библиотека мало потребляет, а результат получается намного лучше.
В начале следует импортировать модуль требуемого языка, к примеру вот модули английского, русского и французского соответственно: EnglishStemmer, FrenchStemmer, RussianStemmer.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 358 |
| 13 | 🚀 Подборка полезных IT каналов в Max
Системное администрирование, DevOps 📌
https://max.ru/i_odmin Все для системного администратора
https://max.ru/bash_srv Bash Советы
https://max.ru/sysadminof Книги для админов, полезные материалы
https://max.ru/i_odmin_book Библиотека Системного Администратора
https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др.
https://max.ru/tipsysdmin Типичный Сисадмин
https://max.ru/channel_win_sysadmin Системный Администратор Windows
https://max.ru/channel_linux_admin Linux: Системный администратор
https://max.ru/channel_linuxmod Linux
https://max.ru/channel_i_linux Системный администратор
https://max.ru/channel_devopslib DevOps, SRE, Sysadmin
https://max.ru/channel_devops_star DevOps Star (Звезда Девопса)
Excel лайфхак 📌
https://t.me/Excel_lifehack Excel лайфхак
Английский с нуля 🇬🇧
https://max.ru/UchuEnglish
1C разработка 📌
https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С
https://max.ru/channel_DevLab1C 1С:Предприятие 8
Программирование C++📌
https://max.ru/cpp_lib Библиотека C/C++ разработчика
https://max.ru/channel_cpp_geek C++ geek
Программирование Go📌
https://max.ru/golang_lib Библиотека Go (Golang) разработчика
Программирование React📌
https://max.ru/react_lib React
Программирование Rust📌
https://max.ru/channel_rust_lib
Программирование Python 📌
https://max.ru/python_of Python академия.
https://max.ru/BookPython Библиотека Python разработчика
Java разработка 📌
https://max.ru/bookjava Библиотека Java разработчика
https://max.ru/channel_java_geek Java Geek
GitHub Сообщество 📌
https://max.ru/githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://max.ru/database_info Все про базы данных
Фронтенд разработка 📌
https://max.ru/frontend_1 Подборки для frontend разработчиков
Библиотеки 📌
https://max.ru/programmist_of Книги по программированию
https://max.ru/proglb Библиотека программиста
https://max.ru/bfbook Книги для программистов
Программирование 📌
https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций
https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT
https://max.ru/php_lib Библиотека PHP программиста 👨🏼💻👩💻
Шутки программистов 📌
https://max.ru/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://max.ru/thehaking Канал о кибербезопасности
https://max.ru/xakkep_1 Хакер Free
Книги, статьи для дизайнеров 📌
https://max.ru/odesigners Статьи, книги для дизайнеров
Математика 📌
https://max.ru/Pomatematike Канал по математике
https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике
Вакансии в IT📌
https://max.ru/progjob
https://max.ru/channel_rabotait
Мир технологий 📌
https://max.ru/mir_teh Канал для любознательных
Городские📌
https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга
https://max.ru/mockva_life Свежие новости Москвы
https://max.ru/piterspb Питер Новости: Санкт-Петербург / СПБ / ДТП
https://max.ru/channel_krasnodar_novosty Краснодар Новости
https://max.ru/channel_novosibirsk_novosti Новосибирск
https://max.ru/channel_samara_novosti Новости Самары
https://max.ru/channel_ekaterinburg_novosti Новости Екатеринбурга
https://max.ru/channel_kazan_novosti Новости Казани
https://max.ru/channel_omsk_novosti Новости Омска
https://max.ru/channel_moskva_24 Москва 24 | 297 |
| 14 | Множества set
Многие недооценивают данный тип, а зря. К примеру, если вам нужно найти количество одинаковых слов, то множества с легкостью вам помогут.
Похожи на списки, но на неупорядоченные. Они больше весят, но намного быстрее. В небольших проектах оправдано такое использование: множество id админов/пользователей (в зависимости от размера ОЗУ), когда требуется только проверить есть ли id в списке. Через стандартный список это займет O(n) или если он отсортирован O(log n) , в то время как у множеств это всегда O(1).
Зная преимущества вы всегда можете выбрать наиболее предпочтительный вариант в той или иной ситуации.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 384 |
| 15 | Модуль sys
Данный модуль предоставляет доступ к широким возможностям интерпретатора python. К примеру, с его помощью можно завершить работу скрипта, узнать вес объекта, получить пути к библиотекам, узнать операционную систему, узнать кодировку файлов по умолчанию и многое другое.
Если вы планируете участвовать в олимпиадах, то обязаны так же обрабатывать потоковый ввод. Для своих программ можно обойтись и без него.
Я перечислил самые полезные функции, остальное всегда можно прочитать в документации (да, её стоит читать) или загуглить.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 459 |
| 16 | Очистка элементов в последовательности
Встроенный модуль itertools был создан для работы с более сложными случаями итераторов. Плюс модуля в том, что он быстро работает и оптимизирован в плане памяти.
Иногда возникает необходимость удалить ненужные объекты в последовательности. Как раз для этого и используют itertools, а именно метод compress.
Первым аргументом передается какой-либо контейнер, например список. Вторым аргументом — логические значения, соответствующие элементам в последовательности.
Если логическое значения равно True или 1, то элемент сохраняется в последовательности, в противном случае — удаляется из нее.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 534 |
| 17 | Как вывести все методы класса в Python?
Для того, чтобы вывести все методы класса, Вы можете воспользоваться методами dir(), callable(), getattr()
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 588 |
| 18 | Функции высшего порядка
Функции высшего порядка - функции принимающие или возвращающие другие функции. Очень говорящее название, запомнить очень просто
Чуть ранее мы говорили про lambda, они очень хорошо взаимодействуют с высшими функциями. Про одну из них мы говорили - map(). Она может принимать в себя лямбду, но это не дает такой большой функциональности.
Еще одна функция-итератор - filter()
Она поможет отфильтровать списки или итераторы. Первым принимает функцию, если она возвращает True, то пропускает элемент, вторым аргументом принимает список или итератор.
Не забывайте комбинировать функции!
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 623 |
| 19 | Конструктор класса
У классов практически во всех языках есть конструкторы — это такие специальные методы, которые вызываются автоматически и инициализируют экземпляр класса.
В Python конструкторы в классах имеют название __init__(), и их почти всегда переопределяют. Делается это для того, чтобы назначить свойства объекту и выполнить предварительные действия.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 652 |
| 20 | Анонимные функции
Часто функции нужны только один раз, причем короткие. И избыточно создавать под них функцию и придумывать ей имя.
Для таких случаев существуют лямбда функции, так выглядит их создание:
<аргументы>: <выражение>
Такие функции обязан знать каждый программист, их применение сильно сокращает код.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 606 |
