ch
Feedback
Python академия

Python академия

前往频道在 Telegram

Учи Python быстро и легко. Ежедневно публикуем практические задачи, разборы, готовые решения, объяснения логики, советы по алгоритмам. ✔ Подходит для прокачки навыков кодирования. По всем вопросам @evgenycarter

显示更多
7 291
订阅者
+224 小时
-137
-4230
帖子存档
Подборка Telegram каналов для программистов Системное администрирование 📌 https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало) https://t.me/sysadminof Книги для админов, полезные материалы https://t.me/i_odmin Все для системного администратора https://t.me/i_odmin_book Библиотека Системного Администратора https://t.me/i_odmin_chat Чат системных администраторов https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др. https://t.me/sysadminoff Новости Линукс Linux https://t.me/tikon_1 Новости высоких технологий, науки и техники💡 https://t.me/mir_teh Мир технологий (Technology World) https://t.me/rust_lib Полезный контент по программированию на Rust https://t.me/golang_lib Библиотека Go (Golang) разработчика https://t.me/itmozg Программисты, дизайнеры, новости из мира IT. https://t.me/phis_mat Обучающие видео, книги по Физике и Математике https://t.me/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻 https://t.me/nodejs_lib Подборки по Node js и все что с ним связано https://t.me/ruby_lib Библиотека Ruby программиста 1C разработка 📌 https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С Программирование C++📌 https://t.me/cpp_lib Библиотека C/C++ разработчика https://t.me/cpp_knigi Книги для программистов C/C++ https://t.me/cpp_geek Учим C/C++ на примерах Программирование Python 📌 https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍 https://t.me/BookPython Библиотека Python разработчика https://t.me/python_real Python подборки на русском и английском https://t.me/python_360 Книги по Python Rus Java разработка 📌 https://t.me/BookJava Библиотека Java разработчика https://t.me/java_360 Книги по Java Rus https://t.me/java_geek Учим Java на примерах GitHub Сообщество 📌 https://t.me/Githublib Интересное из GitHub Базы данных (Data Base) 📌 https://t.me/database_info Все про базы данных Мобильная разработка: iOS, Android 📌 https://t.me/developer_mobila Мобильная разработка https://t.me/kotlin_lib Подборки полезного материала по Kotlin Фронтенд разработка 📌 https://t.me/frontend_1 Подборки для frontend разработчиков https://t.me/frontend_sovet Frontend советы, примеры и практика! https://t.me/React_lib Подборки по React js и все что с ним связано Разработка игр 📌 https://t.me/game_devv Все о разработке игр Вакансии 📌 https://t.me/sysadmin_rabota Системный Администратор https://t.me/progjob Вакансии в IT Чат программистов📌 https://t.me/developers_ru Библиотеки 📌 https://t.me/book_for_dev Книги для программистов Rus https://t.me/programmist_of Книги по программированию https://t.me/proglb Библиотека программиста https://t.me/bfbook Книги для программистов https://t.me/books_reserv Книги для программистов БигДата, машинное обучение 📌 https://t.me/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning Программирование 📌 https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций https://t.me/coddy_academy Полезные советы по программированию QA, тестирование 📌 https://t.me/testlab_qa Библиотека тестировщика Шутки программистов 📌 https://t.me/itumor Шутки программистов Защита, взлом, безопасность 📌 https://t.me/thehaking Канал о кибербезопасности https://t.me/xakep_1 Статьи из "Хакера" Книги, статьи для дизайнеров 📌 https://t.me/ux_web Статьи, книги для дизайнеров Английский 📌 https://t.me/UchuEnglish Английский с нуля Математика 📌 https://t.me/Pomatematike Канал по математике Excel лайфхак📌 https://t.me/Excel_lifehack

Выводим повторяющиеся элементы и количество их повторений Функция groupby() позволяет получить повторяющиеся элементы в итера
Выводим повторяющиеся элементы и количество их повторений Функция groupby() позволяет получить повторяющиеся элементы в итераторе и сгруппировать их. Подписывайтесь на канал 👉@pythonofff

Перечисления Python поддерживает простой механизм работы с перечислениями, которые ещё называют enum. Подобные перечисления у
Перечисления Python поддерживает простой механизм работы с перечислениями, которые ещё называют enum. Подобные перечисления удобно использовать для хранения списков констант. Из документации можно узнать о том, что Enum — это набор символических имён, привязанных к уникальным, неизменным значениям. Члены одного перечисления можно сравнивать на идентичность. Также можно задать геттер через @ property, который используют для получения перечислений в других форматах. В примере реализовано перечисление цветов в RGB, а через геттер их можно получить в формате hex. Подписывайтесь на канал 👉@pythonofff

Virtual environments: виртуальные среды Одна из самых полезных возможностей Python. Часто бывает так, что два проекта использ
Virtual environments: виртуальные среды Одна из самых полезных возможностей Python. Часто бывает так, что два проекта используют одну и ту же зависимость, но в разных версиях. Что вы устанавливаете в этом случае? Нет нужды делать сложный выбор, ведь Python поддерживает виртуальные среды. Подписывайтесь на канал 👉@pythonofff

Делаем скриншоты Кросс-платформенный модуль pyscreenshot позволяет делать скриншоты как всего экрана, так и его части. Для ег
Делаем скриншоты Кросс-платформенный модуль pyscreenshot позволяет делать скриншоты как всего экрана, так и его части. Для его работы должна быть корректно установлена библиотека pillow. Для создания скриншота используется метод grab, для его открытия – show, для сохранения – save. Также в grab можно передать аргумент bbox для захвата только определённой части экрана. Подобный модуль может быть полезен, например, для логирования скриптов, использующих Selenium, который может открывать браузер и производить какие-либо операции в нём. Подписывайтесь на канал 👉@pythonofff

3, 2 … Остановимся здесь. 🐍 Потому что 2 недель достаточно, чтобы познакомиться с основами Python и понять, подходит ли вам
3, 2 … Остановимся здесь. 🐍 Потому что 2 недель достаточно, чтобы познакомиться с основами Python и понять, подходит ли вам это направление! Не обещаем, что будет легко, но интересно, полезно и недорого (всего 990 рублей!) — гарантируем. Расклад такой: мы даем вам базу — больше 70 уроков, вебинары, лайвкодинг, а вы пишете собственную программу. Если переживайте — не переживайте :) Рядом всегда будет наставник, готовый ответить на любой ваш вопрос. ⏰ Старт курса уже 27 февраля, присоединяйтесь!

xkcd: комиксы Язык получил свое название в честь комедийного шоу Монти Пайтона, поэтому у него неплохое чувство юмора. В доку
xkcd: комиксы Язык получил свое название в честь комедийного шоу Монти Пайтона, поэтому у него неплохое чувство юмора. В документации множество отсылок к известным скетчам, но это еще не все. Подписывайтесь на канал 👉@pythonofff

Прогресс выполнения программы Индикаторы прогресса добавляют наглядности в скриптах, которые исполняют какие-то функции, треб
Прогресс выполнения программы Индикаторы прогресса добавляют наглядности в скриптах, которые исполняют какие-то функции, требующие времени для выполнения. Модуль tqdm является простым и лаконичным вариантом. Привычный range можно заменить на trange для визуализации прогресса. А для итерации по какой-либо последовательности, достаточно просто передать её в функцию tqdm. Также модуль хорошо себя зарекомендовал и в Jupyter Notebook. Кстати, интересный факт – название tqdm произошло от арабского слова "taqaddum" (تقدّم), которое означает "прогресс," а также это ещё и сокращение от "я тебя сильно люблю" на испанском (te quiero demasiado). Подписывайтесь на канал 👉@pythonofff

Введение в super() С точки зрения поддерживаемости super() может быть полезен даже при одиночном наследовании. Если по какой-
Введение в super() С точки зрения поддерживаемости super() может быть полезен даже при одиночном наследовании. Если по какой-либо причине ваш дочерний класс меняет свой шаблон наследования (т.е. изменяется родительский класс или происходит переход к множественному наследованию), то нет необходимости искать и заменять все устаревшие ссылки на ParentClass.method_name(). Таким образом, использование super() позволит всем изменениям пройти через изменение в операторе класса. Подписывайтесь на канал 👉@pythonofff

Красивые таблицы в терминале PrettyTable – это простая библиотека, предназначенная для быстрого и легкого представления табли
Красивые таблицы в терминале PrettyTable – это простая библиотека, предназначенная для быстрого и легкого представления табличных данных в виде ASCII. Модуль можно установить привычным способом через pip. Для создания таблиц и работы с ними используется класс PrettyTable из этого модуля. Задать название для столбцов можно с помощью атрибута fields_name. Строки в таблицу добавляются путем вызова метода add_row. Более того, модуль prettytable позволяет регулировать различные параметры, сортировать данные, работать с html, а также взаимодействовать с csv и sql таблицами. Так что возможностей у этого модуля предостаточно. Подписывайтесь на канал 👉@pythonofff

Сравнение строк при помощи == и != Сравнение двух строк можно эффективно выполнить с помощью операторов == и !=. Оператор ==
Сравнение строк при помощи == и != Сравнение двух строк можно эффективно выполнить с помощью операторов == и !=. Оператор == возвращает True, если строки идентичны, и False в противном случае. Оператор != действует наоборот. Подписывайтесь на канал 👉@pythonofff

Одноразовый метод в классе В случае, если вдруг понадобится в классе функция, которая будет использоваться всего один раз, по
Одноразовый метод в классе В случае, если вдруг понадобится в классе функция, которая будет использоваться всего один раз, после чего будет использоваться другая функция, можно воспользоваться приемом на картинке. Последней строчкой метода call является переопределение самого этого метода на другой, а именно normal_call. Таким образом, изначальный код call будет исполнен только один раз. Подобный прием будет полезен в тех случаях, когда при самом первом вызове метода в классе требуются выполнить одноразовые действия, которые в дальнейшем не нужны. Подписывайтесь на канал 👉@pythonofff

Генератор списка с одиночным и вложенным условием if В генератор списка также можно добавить if-условие, которое может помочь
Генератор списка с одиночным и вложенным условием if В генератор списка также можно добавить if-условие, которое может помочь нам отфильтровать данные. Например, в приведенном ниже коде мы сохраняем в список c все значения lst, большие 4 Подписывайтесь на канал 👉@pythonofff

Создание процессов Класс Process из встроенного модуля multiprocessing позволяет создавать процессы без прямого вызова функци
Создание процессов Класс Process из встроенного модуля multiprocessing позволяет создавать процессы без прямого вызова функции fork. При создании экземпляра Proccess необходимо передать функцию, которую требуется исполнить в отдельном дочернем процессе и аргументы этой функции. Процесс будет создан после вызова метода start. Внутри метода start будет вызван fork и будет исполнена функция в отдельном процессе. Очень важно ожидать завершения всех созданных дочерних процессов. Для этого можно воспользоваться удобной функцией join. Подписывайтесь на канал 👉@pythonofff

Что такое форматирование строк в Python с помощью %? Вы можете создать строку и использовать %s внутри нее. %s здесь играет р
Что такое форматирование строк в Python с помощью %? Вы можете создать строку и использовать %s внутри нее. %s здесь играет роль плейсхолдера. Дальше вы можете написать значок %, а затем – фактическое строковое значение, которое хотите использовать. Это значение в результате вставится на место плейсхолдера. Подписывайтесь на канал 👉@pythonofff

Легкий веб-фреймворк Bottle – это быстрый, простой и легкий микро-веб-фреймворк WSGI для Python. Он распространяется как един
Легкий веб-фреймворк Bottle – это быстрый, простой и легкий микро-веб-фреймворк WSGI для Python. Он распространяется как единый файловый модуль и не имеет никаких зависимостей, кроме стандартной библиотеки Python. Несмотря на свою минималистичность, Bottle предоставляет довольно широкие возможности, которых на 100% хватает для мелких и средних проектов. Вот список основных возможностей: routing, templates, POST-routing, обработка форм, cookies и сервер. После запуска подобного примера можете перейти в браузере по адресу localhost:5000/hello/world и посмотреть на результат, полученный из всего пяти строк кода. Подписывайтесь на канал 👉@pythonofff

Использование списков в качестве стеков Стек – абстрактный тип данных, представляющий собой список элементов, организованных
Использование списков в качестве стеков Стек – абстрактный тип данных, представляющий собой список элементов, организованных по принципу LIFO (last in – first out). В переводе с английского "последним пришёл – первым вышел". Списки в Python имеют удобные встроенные методы, которых достаточно для реализации такой структуры данных. Для добавления элемента в конец стека используем метод append, для извлечения – pop. Программный вид стека применяется для обхода структур по типу графов и деревьев. При реализации рекурсивных функций также будет применяться стек, но в таком случае уже его аппаратный вид. Подписывайтесь на канал 👉@pythonofff

Объединяем несколько итераторов в один Функция chain() помогает нам объединять несколько итераторов в один. Подписывайтесь на
Объединяем несколько итераторов в один Функция chain() помогает нам объединять несколько итераторов в один. Подписывайтесь на канал 👉@pythonofff

Превью из длинного текста Допустим, у нас есть какой-то длинный текст в виде строки и надо сделать превью этого текста, напри
Превью из длинного текста Допустим, у нас есть какой-то длинный текст в виде строки и надо сделать превью этого текста, например, для сайта. Первое, что приходит на ум – использовать слайсинг строк. Но, как видите, текст оборвался на полуслове, поэтому такой вариант отпадает. Такую проблему хорошо решает метод shorten из модуля textwrap. Первым аргументом передается строка, вторым указываем количество символов, которое должен содержать результат. Также третьим аргументом можно передать заготовку, которая будет вставляться в конце обрезанной строки. Подписывайтесь на канал 👉@pythonofff

Паттерн проектирования Singleton Одиночка или же синглтон – это паттерн проектирования, описывающий объект, у которого имеетс
Паттерн проектирования Singleton Одиночка или же синглтон – это паттерн проектирования, описывающий объект, у которого имеется один единственный экземпляр. Метод __new__ вызывается для создания экземпляра класса, перед вызовом __init__. На вход первым аргументом метод принимает сам класс, а возвращать должен уже экземпляр (даже можно экземпляр и другого класса). В примере мы проверяем, есть ли значение у атрибута instance. Если нет, то присваиваем атрибуту экземпляр этого же класса. А если уже экземпляр создан, то просто его возвращаем. То есть при вызове конструктора класса Singleton, будет возвращаться один и тот же объект из памяти. Подписывайтесь на канал 👉@pythonofff