Python академия
الذهاب إلى القناة على Telegram
Учи Python быстро и легко. Ежедневно публикуем практические задачи, разборы, готовые решения, объяснения логики, советы по алгоритмам. ✔ Подходит для прокачки навыков кодирования. По всем вопросам @evgenycarter
إظهار المزيد7 106
المشتركون
-124 ساعات
-107 أيام
-3230 أيام
جارٍ تحميل البيانات
القنوات المماثلة
سحابة العلامات
الإشارات الواردة والصادرة
---
---
---
---
---
---
جذب المشتركين
أكتوبر '26أكتوبر '26
أكتوبر '26
+29
في 0 قنوات
سبتمبر '26
+27
في 0 قنوات
Get PRO
أغسطس '26
+35
في 0 قنوات
Get PRO
يوليو '26
+21
في 0 قنوات
Get PRO
يونيو '26
+34
في 0 قنوات
Get PRO
مايو '26
+36
في 0 قنوات
Get PRO
أبريل '26
+35
في 0 قنوات
Get PRO
مارس '26
+34
في 0 قنوات
Get PRO
فبراير '26
+32
في 0 قنوات
Get PRO
يناير '26
+35
في 1 قنوات
Get PRO
ديسمبر '25
+51
في 0 قنوات
Get PRO
نوفمبر '25
+82
في 31 قنوات
Get PRO
أكتوبر '25
+51
في 0 قنوات
Get PRO
سبتمبر '25
+104
في 36 قنوات
Get PRO
أغسطس '25
+71
في 0 قنوات
Get PRO
يوليو '25
+108
في 27 قنوات
Get PRO
يونيو '25
+101
في 19 قنوات
Get PRO
مايو '25
+122
في 44 قنوات
Get PRO
أبريل '25
+186
في 37 قنوات
Get PRO
مارس '25
+151
في 38 قنوات
Get PRO
فبراير '25
+188
في 31 قنوات
Get PRO
يناير '25
+169
في 34 قنوات
Get PRO
ديسمبر '24
+176
في 34 قنوات
Get PRO
نوفمبر '24
+169
في 32 قنوات
Get PRO
أكتوبر '24
+210
في 29 قنوات
Get PRO
سبتمبر '24
+254
في 28 قنوات
Get PRO
أغسطس '24
+115
في 17 قنوات
Get PRO
يوليو '24
+98
في 0 قنوات
Get PRO
يونيو '24
+124
في 23 قنوات
Get PRO
مايو '24
+134
في 18 قنوات
Get PRO
أبريل '24
+128
في 0 قنوات
Get PRO
مارس '24
+185
في 20 قنوات
Get PRO
فبراير '24
+143
في 17 قنوات
Get PRO
يناير '24
+246
في 23 قنوات
Get PRO
ديسمبر '23
+186
في 23 قنوات
Get PRO
نوفمبر '23
+147
في 16 قنوات
Get PRO
أكتوبر '23
+203
في 18 قنوات
Get PRO
سبتمبر '23
+213
في 0 قنوات
Get PRO
أغسطس '23
+156
في 0 قنوات
Get PRO
يوليو '23
+167
في 0 قنوات
Get PRO
يونيو '23
+190
في 0 قنوات
Get PRO
مايو '23
+186
في 0 قنوات
Get PRO
أبريل '23
+228
في 0 قنوات
Get PRO
مارس '23
+70
في 0 قنوات
Get PRO
فبراير '23
+116
في 0 قنوات
Get PRO
يناير '23
+208
في 0 قنوات
Get PRO
ديسمبر '22
+241
في 0 قنوات
Get PRO
نوفمبر '22
+207
في 0 قنوات
Get PRO
أكتوبر '22
+413
في 0 قنوات
Get PRO
سبتمبر '22
+479
في 0 قنوات
Get PRO
أغسطس '22
+479
في 0 قنوات
Get PRO
يوليو '22
+600
في 0 قنوات
Get PRO
يونيو '22
+481
في 0 قنوات
Get PRO
مايو '22
+630
في 0 قنوات
Get PRO
أبريل '22
+946
في 0 قنوات
Get PRO
مارس '22
+1 344
في 0 قنوات
Get PRO
فبراير '22
+1 103
في 0 قنوات
| التاريخ | نمو المشتركين | الإشارات | القنوات | |
| 26 أكتوبر | +3 | |||
| 25 أكتوبر | +1 | |||
| 24 أكتوبر | 0 | |||
| 23 أكتوبر | +2 | |||
| 22 أكتوبر | 0 | |||
| 21 أكتوبر | 0 | |||
| 20 أكتوبر | +3 | |||
| 19 أكتوبر | +2 | |||
| 18 أكتوبر | 0 | |||
| 17 أكتوبر | +1 | |||
| 16 أكتوبر | +2 | |||
| 15 أكتوبر | +2 | |||
| 14 أكتوبر | +1 | |||
| 13 أكتوبر | 0 | |||
| 12 أكتوبر | 0 | |||
| 11 أكتوبر | +2 | |||
| 10 أكتوبر | +1 | |||
| 09 أكتوبر | 0 | |||
| 08 أكتوبر | 0 | |||
| 07 أكتوبر | +3 | |||
| 06 أكتوبر | +1 | |||
| 05 أكتوبر | +1 | |||
| 04 أكتوبر | +2 | |||
| 03 أكتوبر | +1 | |||
| 02 أكتوبر | 0 | |||
| 01 أكتوبر | +1 |
منشورات القناة
Как округлить до тысячных в python?
Вы можете использовать round()
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff
| 2 | Разница между == и is
Недавно в чате наши подписчики затрагивали эту тему, поэтому мы решили разложить всё по полочкам, чтобы в дальнейшем не возникало вопросов.
Итак, оператор == проверяет равенство значений двух объектов. А оператор is в свою очередь проверяет идентичность самих объектов. Его используют, чтобы удостовериться, что переменные указывают на один и тот же объект в памяти.
Однако Python в целях производительности кеширует короткие строки и малые целые числа, поэтому возможны некоторые казусы, как в примере.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 220 |
| 3 | Сборка exe файлов - pyinstaller
Если вы просто скопируете проект, то он не будет работать на других системах где нет установленного Python, а если есть, то возможно там отсутствуют нужные библиотеки. Но можно создать исполняемый файл exe, который запустится и без Python. Необходимо установить pyinstaller:
install pyinstaller
Затем перейти в командную строку, и перейти в нужную директорию с помощью команды cd. Далее напишем такой код:
--onefile --noconsole main.py
--onefile - означает, что будет только один исполняемый файл.
--noconsole - консоль не будет запускаться при открытии
main.py - файл, при запуске которого начинает работать ваша программа
В папке dist будет лежать нужный файл, остальные созданные папки можно удалить
Внимание! С помощью данного метода не получится скрыть ваш код, так же вы не получите прироста в скорости работы программы.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 368 |
| 4 | 💻 Зависимости Python-проекта можно устанавливать и обновлять быстрее — если правильно настроить инструменты.
На открытом уроке разберём uv — современный инструмент для управления Python-проектами и зависимостями.
🔥 Вы на практике:
— изучите ключевые концепции uv;
— разберёте основные команды для управления проектом и зависимостями;
— узнаете, как использовать uv при сборке Docker-образов;
— поймёте, как применять uv в своих проектах.
В результате сможете увереннее работать с зависимостями, улучшить удобство разработки и ускорить сборку проекта.
Урок будет полезен всем, кто использует Python и хочет освоить современный инструмент uv.
Открытый урок проходит в преддверии старта курса «Python-разработчик. Продвинутый уровень».
⏰ 29 октября в 20:00 МСК. Участие бесплатно: https://vk.cc/d36wwr
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru | 343 |
| 5 | Итерирование с использованием функции enumerate
Функция range позволяет получить только индексы элементов списка. Функция enumerate генерирует кортежи, состоящие из двух элементов – индекса элемента и самого элемента. Эти кортежи можно распаковать еще в заголовке for
Получается короткий и понятный код!
В примере разберем как извлечь из списка элементы и их индекс, рис.1.
Еще одной полезной и крутой фишкой этой функции будет легкое создания счетчика. Более того, мы можем установить первоначальное значение счетчика, рис. 2.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 318 |
| 6 | Модуль zipfile
Как говорилось ранее с zip может работать модуль shutil, но zipfile более многофункционален. С другой стороны он не так универсален и работает только с зипами. За все надо платить, не существует идеального способа для всего.
Для начала надо из zipfile импортировать ZipFile. И открыть файл ZipFile(file).
printdir() - вывод списка содержимого текстом для печати.
namelist() - вывод списка фалов списком.
open() - открыть файл внутри архива, далее работа проходит аналогично работе фалов.
Для практики на картинке показана программа выводящая красивый вложенный список файлов находящихся в архиве.
Больше возможностей можно узнать через help() или документацию.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 351 |
| 7 | 🤔 API работает — но как убедиться, что после очередного изменения оно продолжит работать корректно?
На открытом уроке разберём, как автоматизировать проверку FastAPI-приложений с помощью pytest и TestClient.
🔥Вы на практике:
— отправите запросы к приложению через TestClient;
— напишете тесты для корректных и некорректных данных;
— проверите HTTP-статусы и содержимое JSON;
— разберётесь, как подменять зависимости приложения для проверки нужного поведения.
Урок будет полезен Python-разработчикам, которые уже создают API, и начинающим разработчикам серверной части, которые пока тестируют приложения вручную.
Открытый урок проходит в преддверии старта курса «Python-разработчик».
⏰26 октября в 20:00 МСК. Принять участие: https://vk.cc/d2UR9D
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576 | 445 |
| 8 | Модуль shutil
Очень смешное название, но библиотека является мощным инструментом для обработки файлов. В прошлом посте говорилось о модуль os. Надо учитывать, что многие задачи решить через него можно, но придется постараться.
Программисты комбинируют os и shutil для достижения наиболее красивого и эффективного кода.
shutil.copyfileobj(fsrc, fdst) - копирует один файл в другой.
shutil.copymode(fsrc, fdst) - копирует права доступа из одного файла в другой.
shutil.copystat(fsrc, fdst) - копирует дату последнего доступа и изменения из одного файла в другой.
Библиотека позволяет так же работать с архивами shutil.get_archive_formats(), чтобы узнать доступные для работы архивы.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 394 |
| 9 | Обработка строки
Полезные функции для работы со строками. Python известен тем, что можно написать код в одну строчку использованием метода вместо перебора списком.
Перечислим наиболее полезные методы:
capitalize() - первая буква большая, остальные маленькие
strip() - удаление пробелов в начале и конце
center(int, chr='') - отцентрирует текст, int - нужное кол-во символов в строке, а chr - символ для добавления в начало и конец
swapcase() - заглавные буквы в прописные, маленькие в большие
lower() - преобразует к нижнему регистру
upper() - преобразует к верхнему регистру
При написании нейронок и ботов обязательно приводите все к нижнему регистру с помощью lower(). При написании ботов часто использую center(), для красивого вывода.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 378 |
| 10 | Потоковый ввод
Вы можете обрабатывать ввод от пользователя потоком. В таком случае для завершения надо воспользоваться специальной "командой" на Windows — Ctrl + D. Запустить потоковый ввод можно через библиотеку sys и метод stdin.
Если требуется получить и тут же обработать строку, то так и пишем: sys.stdin
Если надо в начале прочитать весь потоковый ввод, а затем обработать, то sys.stdin.readlines()
На картинке представлено 2 варианта.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 365 |
| 11 | Библиотека showballstemmer
Работали когда-нибудь над поисковиками? Хороший поисковик должен много чего уметь, например, находить по минимальному запросу.
Некоторые используют pymorph2 (первая слишком много потребляет ресурсов), но ведь достаточно определять основу слова, а не начальную форму для нахождения большинства результатов.
Библиотека showballstemmer и занимается тем, что определяет основу слова, что делает поиск более точным. А главное — библиотека мало потребляет, а результат получается намного лучше.
В начале следует импортировать модуль требуемого языка, к примеру вот модули английского, русского и французского соответственно: EnglishStemmer, FrenchStemmer, RussianStemmer.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 351 |
| 12 | 🚀 Подборка полезных 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 | 293 |
| 13 | Множества set
Многие недооценивают данный тип, а зря. К примеру, если вам нужно найти количество одинаковых слов, то множества с легкостью вам помогут.
Похожи на списки, но на неупорядоченные. Они больше весят, но намного быстрее. В небольших проектах оправдано такое использование: множество id админов/пользователей (в зависимости от размера ОЗУ), когда требуется только проверить есть ли id в списке. Через стандартный список это займет O(n) или если он отсортирован O(log n) , в то время как у множеств это всегда O(1).
Зная преимущества вы всегда можете выбрать наиболее предпочтительный вариант в той или иной ситуации.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 342 |
| 14 | Модуль sys
Данный модуль предоставляет доступ к широким возможностям интерпретатора python. К примеру, с его помощью можно завершить работу скрипта, узнать вес объекта, получить пути к библиотекам, узнать операционную систему, узнать кодировку файлов по умолчанию и многое другое.
Если вы планируете участвовать в олимпиадах, то обязаны так же обрабатывать потоковый ввод. Для своих программ можно обойтись и без него.
Я перечислил самые полезные функции, остальное всегда можно прочитать в документации (да, её стоит читать) или загуглить.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 435 |
| 15 | Очистка элементов в последовательности
Встроенный модуль itertools был создан для работы с более сложными случаями итераторов. Плюс модуля в том, что он быстро работает и оптимизирован в плане памяти.
Иногда возникает необходимость удалить ненужные объекты в последовательности. Как раз для этого и используют itertools, а именно метод compress.
Первым аргументом передается какой-либо контейнер, например список. Вторым аргументом — логические значения, соответствующие элементам в последовательности.
Если логическое значения равно True или 1, то элемент сохраняется в последовательности, в противном случае — удаляется из нее.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 526 |
| 16 | Как вывести все методы класса в Python?
Для того, чтобы вывести все методы класса, Вы можете воспользоваться методами dir(), callable(), getattr()
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 578 |
| 17 | Функции высшего порядка
Функции высшего порядка - функции принимающие или возвращающие другие функции. Очень говорящее название, запомнить очень просто
Чуть ранее мы говорили про lambda, они очень хорошо взаимодействуют с высшими функциями. Про одну из них мы говорили - map(). Она может принимать в себя лямбду, но это не дает такой большой функциональности.
Еще одна функция-итератор - filter()
Она поможет отфильтровать списки или итераторы. Первым принимает функцию, если она возвращает True, то пропускает элемент, вторым аргументом принимает список или итератор.
Не забывайте комбинировать функции!
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 616 |
| 18 | Конструктор класса
У классов практически во всех языках есть конструкторы — это такие специальные методы, которые вызываются автоматически и инициализируют экземпляр класса.
В Python конструкторы в классах имеют название __init__(), и их почти всегда переопределяют. Делается это для того, чтобы назначить свойства объекту и выполнить предварительные действия.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 652 |
| 19 | Анонимные функции
Часто функции нужны только один раз, причем короткие. И избыточно создавать под них функцию и придумывать ей имя.
Для таких случаев существуют лямбда функции, так выглядит их создание:
<аргументы>: <выражение>
Такие функции обязан знать каждый программист, их применение сильно сокращает код.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 606 |
| 20 | Бесконечные списки
Мы уже рассказывали про важность копирования списков. Но именно из-за такой процедуры появляется возможность создавать бесконечные списки. Дойти до конца такого списка невозможно, при этом он потребляет минимум памяти. Попробуйте создать сами.
На картинке (см. выше) видно создание. А затем мы пробуем модуль copy, чтобы узнать сможет ли он сделать глубокое копирование бесконечного объекта?
Применить знание особо негде, но данное задание помогает понять работу списков. Возможно, такой вопрос задаст вам рекрутер на одном из собеседований.
📲 Мы в MAX
Подписывайтесь на канал 👉@pythonofff | 580 |
