en
Feedback
Python академия

Python академия

Open in Telegram

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

Show more
7 176
Subscribers
No data24 hours
-117 days
-4230 days
Posts Archive
"Быстрый" контейнер deque Встроенных списков в Python иногда может не хватать, поэтому покажем одну хорошую альтернативу. Deq
"Быстрый" контейнер deque Встроенных списков в Python иногда может не хватать, поэтому покажем одну хорошую альтернативу. Deque может быть реализован c помощью модуля collections. Deque предпочтительнее, чем обычный список, в тех случаях, когда нам нужны более быстрые операции добавления и вытягивания элементо из обоих концов контейнера, поскольку deque обеспечивает линейную сложность O(1) для операций добавления и выталкивания по сравнению со списком, у которого сложность по времени для тех операций составляет O(n). Также для deque есть возможность использовать стандартные функции по типу sum, min, max и тому подобные. Подписывайтесь на канал 👉@pythonofff

Избегайте неоправданных циклов с коллекциями Предположим, что требуется создать новый список, элементами которого будут являт
Избегайте неоправданных циклов с коллекциями Предположим, что требуется создать новый список, элементами которого будут являться квадраты чисел данного списка. Большинство сразу же напишут простенький цикл for. Но в этом и проблема. Такой подход займет как минимум три строчки: объявление новой переменной, создание цикла и инструкции внутри него. При этом также снижается скорость работы скрипта. На прикрепленной картинке я привел две достойные альтернативы, а именно использование генератора списков и функции map. В обоих вариантах не только код становится короче и выразительнее, но и заметно повышается производительность. Подписывайтесь на канал 👉@pythonofff

Библиотека FuzzyWuzzy Интересная и полезная библиотека поиска совпадений в тексте. Очень поможет вам при работе над общающими
Библиотека FuzzyWuzzy Интересная и полезная библиотека поиска совпадений в тексте. Очень поможет вам при работе над общающимися ботами: голосовыми или текстовыми помощниками. Разумеется, это один из инструментов, всегда можно использовать другой, но я лично пользуюсь этим. Библиотеку следует установить: install fuzzywuzzy Подписывайтесь на канал 👉@pythonofff

Как создать массив из n элементов в python? Вы можете использовать цикл и метод .append(). Так же для примера можно использов
Как создать массив из n элементов в python? Вы можете использовать цикл и метод .append(). Так же для примера можно использовать модуль random. Подписывайтесь на канал 👉@pythonofff

Как округлить до тысячных в python? Вы можете использовать round() Подписывайтесь на канал 👉@pythonofff
Как округлить до тысячных в python? Вы можете использовать round() Подписывайтесь на канал 👉@pythonofff

Разница между == и is Недавно в чате наши подписчики затрагивали эту тему, поэтому мы решили разложить всё по полочкам, чтобы
Разница между == и is Недавно в чате наши подписчики затрагивали эту тему, поэтому мы решили разложить всё по полочкам, чтобы в дальнейшем не возникало вопросов. Итак, оператор == проверяет равенство значений двух объектов. А оператор is в свою очередь проверяет идентичность самих объектов. Его используют, чтобы удостовериться, что переменные указывают на один и тот же объект в памяти. Однако Python в целях производительности кеширует короткие строки и малые целые числа, поэтому возможны некоторые казусы, как в примере. Подписывайтесь на канал 👉@pythonofff

Как перевести массив в список на python? Вы можете использовать метод .tolist() для перевода массива в список. Подписывайтесь
Как перевести массив в список на python? Вы можете использовать метод .tolist() для перевода массива в список. Подписывайтесь на канал 👉@pythonofff

Сборка exe файлов - pyinstaller Если вы просто скопируете проект, то он не будет работать на других системах где нет установл
Сборка exe файлов - pyinstaller Если вы просто скопируете проект, то он не будет работать на других системах где нет установленного Python, а если есть, то возможно там отсутствуют нужные библиотеки. Но можно создать исполняемый файл exe, который запустится и без Python. Необходимо установить pyinstaller: install pyinstaller Затем перейти в командную строку, и перейти в нужную директорию с помощью команды cd. Далее напишем такой код: --onefile --noconsole main.py --onefile - означает, что будет только один исполняемый файл. --noconsole - консоль не будет запускаться при открытии main.py - файл, при запуске которого начинает работать ваша программа В папке dist будет лежать нужный файл, остальные созданные папки можно удалить Внимание! С помощью данного метода не получится скрыть ваш код, так же вы не получите прироста в скорости работы программы. Подписывайтесь на канал 👉@pythonofff

Итерирование с использованием функции enumerate Функция range позволяет получить только индексы элементов списка. Функция enu
+1
Итерирование с использованием функции enumerate Функция range позволяет получить только индексы элементов списка. Функция enumerate генерирует кортежи, состоящие из двух элементов – индекса элемента и самого элемента. Эти кортежи можно распаковать еще в заголовке for Получается короткий и понятный код! В примере разберем как извлечь из списка элементы и их индекс, рис.1. Еще одной полезной и крутой фишкой этой функции будет легкое создания счетчика. Более того, мы можем установить первоначальное значение счетчика, рис. 2. Подписывайтесь на канал 👉@pythonofff

Как перевести символ в ascii на python? Вы можете использовать метод .ord() для перевода символа в ascii. char = "T" print(or
Как перевести символ в ascii на python? Вы можете использовать метод .ord() для перевода символа в ascii. char = "T" print(ord(char)) Подписывайтесь на канал 👉@pythonofff

Модуль zipfile Как говорилось ранее с zip может работать модуль shutil, но zipfile более многофункционален. С другой стороны
Модуль zipfile Как говорилось ранее с zip может работать модуль shutil, но zipfile более многофункционален. С другой стороны он не так универсален и работает только с зипами. За все надо платить, не существует идеального способа для всего. Для начала надо из zipfile импортировать ZipFile. И открыть файл ZipFile(file). printdir() - вывод списка содержимого текстом для печати. namelist() - вывод списка фалов списком. open() - открыть файл внутри архива, далее работа проходит аналогично работе фалов. Для практики на картинке показана программа выводящая красивый вложенный список файлов находящихся в архиве. Больше возможностей можно узнать через help() или документацию. Подписывайтесь на канал 👉@pythonofff

Модуль shutil Очень смешное название, но библиотека является мощным инструментом для обработки файлов. В прошлом посте говори
Модуль shutil Очень смешное название, но библиотека является мощным инструментом для обработки файлов. В прошлом посте говорилось о модуль os. Надо учитывать, что многие задачи решить через него можно, но придется постараться. Программисты комбинируют os и shutil для достижения наиболее красивого и эффективного кода. shutil.copyfileobj(fsrc, fdst) - копирует один файл в другой. shutil.copymode(fsrc, fdst) - копирует права доступа из одного файла в другой. shutil.copystat(fsrc, fdst) - копирует дату последнего доступа и изменения из одного файла в другой. Библиотека позволяет так же работать с архивами shutil.get_archive_formats(), чтобы узнать доступные для работы архивы. Подписывайтесь на канал 👉@pythonofff

Обработка строки Полезные функции для работы со строками. Python известен тем, что можно написать код в одну строчку использо
Обработка строки Полезные функции для работы со строками. Python известен тем, что можно написать код в одну строчку использованием метода вместо перебора списком. Перечислим наиболее полезные методы: capitalize() - первая буква большая, остальные маленькие strip() - удаление пробелов в начале и конце center(int, chr='') - отцентрирует текст, int - нужное кол-во символов в строке, а chr - символ для добавления в начало и конец swapcase() - заглавные буквы в прописные, маленькие в большие lower() - преобразует к нижнему регистру upper() - преобразует к верхнему регистру При написании нейронок и ботов обязательно приводите все к нижнему регистру с помощью lower(). При написании ботов часто использую center(), для красивого вывода. Подписывайтесь на канал 👉@pythonofff

Подборка 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

Потоковый ввод Вы можете обрабатывать ввод от пользователя потоком. В таком случае для завершения надо воспользоваться специа
Потоковый ввод Вы можете обрабатывать ввод от пользователя потоком. В таком случае для завершения надо воспользоваться специальной "командой" на Windows — Ctrl + D. Запустить потоковый ввод можно через библиотеку sys и метод stdin. Если требуется получить и тут же обработать строку, то так и пишем: sys.stdin Если надо в начале прочитать весь потоковый ввод, а затем обработать, то sys.stdin.readlines() На картинке представлено 2 варианта. Подписывайтесь на канал 👉@pythonofff

Друзья, рады представить вам бесплатные обучающие мероприятия, который подготовил для вас павильон Умный город В последние дн
Друзья, рады представить вам бесплатные обучающие мероприятия, который подготовил для вас павильон Умный город В последние дни лета вы сможете познакомится с таким инструментом, как Scratch, создать свою первую 3D-игру, Яндекс-презентацию, и многое другое! Расписание: «Программирование игры на Scratch» Дата и время: 25 августа в 12:00 Ссылка на регистрацию: https://www.programmistik.ru/events/scratch_game «Разработка 3D-игры на платформе Roblox Studio» Дата и время: 26 августа в 12:00 Ссылка на регистрацию: https://www.programmistik.ru/events/roblox «Подготовка к учебе: создание презентации на тему «Лучшие моменты лета» Дата и время: 27 августа в 12:00 Ссылка на регистрацию: https://www.programmistik.ru/events/yandex_presentation «Использование Python при решении задач из ЕГЭ» Дата и время: 29 августа в 12:00 Ссылка на регистрацию: https://www.programmistik.ru/events/ege «Создай свой сайт с фотогалереей на Tilda» Дата и время: 30 августа в 12:00 Ссылка на регистрацию: https://www.programmistik.ru/events/site-visitka Мастер-классы проводятся в трансляциях сообщества павильона Умный город. Выбирайте понравившиеся и регистрируйтесь!

Библиотека showballstemmer Работали когда-нибудь над поисковиками? Хороший поисковик должен много чего уметь, например, наход
Библиотека showballstemmer Работали когда-нибудь над поисковиками? Хороший поисковик должен много чего уметь, например, находить по минимальному запросу. Некоторые используют pymorph2 (первая слишком много потребляет ресурсов), но ведь достаточно определять основу слова, а не начальную форму для нахождения большинства результатов. Библиотека showballstemmer и занимается тем, что определяет основу слова, что делает поиск более точным. А главное — библиотека мало потребляет, а результат получается намного лучше. В начале следует импортировать модуль требуемого языка, к примеру вот модули английского, русского и французского соответственно: EnglishStemmer, FrenchStemmer, RussianStemmer. Подписывайтесь на канал 👉@pythonofff

💪 Пройди тест по аналитике данных и проверь свои знания. Ответишь — пройдешь на продвинутый курс "Аналитик данных" от OTUS п
💪 Пройди тест по аналитике данных и проверь свои знания. Ответишь — пройдешь на продвинутый курс "Аналитик данных" от OTUS по специальной цене. На курсе ты освоишь мощные навыки анализа данных: анализ требований + статистика + BI и получишь востребованную профессию Курс можно приобрести в рассрочку. ✍️ Пройти тестирование: https://otus.pw/UG1j/ Нативная интеграция. Информация о продукте www.otus.ru

Множества set Многие недооценивают данный тип, а зря. К примеру, если вам нужно найти количество одинаковых слов, то множеств
Множества set Многие недооценивают данный тип, а зря. К примеру, если вам нужно найти количество одинаковых слов, то множества с легкостью вам помогут. Похожи на списки, но на неупорядоченные. Они больше весят, но намного быстрее. В небольших проектах оправдано такое использование: множество id админов/пользователей (в зависимости от размера ОЗУ), когда требуется только проверить есть ли id в списке. Через стандартный список это займет O(n) или если он отсортирован O(log n) , в то время как у множеств это всегда O(1). Зная преимущества вы всегда можете выбрать наиболее предпочтительный вариант в той или иной ситуации. Подписывайтесь на канал 👉@pythonofff

Модуль sys Данный модуль предоставляет доступ к широким возможностям интерпретатора python. К примеру, с его помощью можно за
Модуль sys Данный модуль предоставляет доступ к широким возможностям интерпретатора python. К примеру, с его помощью можно завершить работу скрипта, узнать вес объекта, получить пути к библиотекам, узнать операционную систему, узнать кодировку файлов по умолчанию и многое другое. Если вы планируете участвовать в олимпиадах, то обязаны так же обрабатывать потоковый ввод. Для своих программ можно обойтись и без него. Я перечислил самые полезные функции, остальное всегда можно прочитать в документации (да, её стоит читать) или загуглить. Подписывайтесь на канал 👉@pythonofff