Python School
87.2K subscribers
2.19K photos
6 videos
527 links
Уроки по Python, которые упростят вам жизнь. Без идиотских туториалов.

Наши мемы для программистов: @conhum

Сотрудничество - @alivian

Канал сотрудничает с рекламным сервисом @Tgpodbor_official

№ 4955949006
Download Telegram
Отображение графиков Matplotlib

%matplotlib inline
 — это самая популярная магическая команда. Она позволяет отображать в блокнотах графики Matplotlib. Эта команда активирует интерактивную поддержку Matplotlib для блокнота Jupyter.
Подробная информация об объекте

%pinfo предоставляет подробную информацию об объекте, который передается вместе с ним. Она похожа на функцию object?.
Генератор

generator — тоже итератор, но его ключевое свойство — ленивые вычисления. Это классическая концепция в информатике, и её переняли многие языки программирования, такие как Haskell. Основная идея этой концепции звучит как вызов-по-необходимости. Отложенные вычисления могут приводить к снижению доступной процессу памяти. 

Генератор — это итератор, который работает в режиме обработки по необходимости. Мы не будем производить вычисления и сохранять значения сразу, а сделаем их “на лету”, когда будут выполняться итерации. 
Ограничение итераций

Ограничивать количество итераций нужно для того, чтобы хранить все значения в памяти до их итерирования. Это будет занимать слишком много памяти в некоторых сценариях. Типичная ситуация — чтение строчек из файла.
Итерируемые объекты

В Python итерируемый объект — это объект, над которым производятся так называемые проходы (итерации). Например, как в цикле for.
Большинство наборных структур данных являются итерируемыми объектами. Это списки, кортежи, наборы. Например, ниже мы создаём список и проходимся по его элементам по очереди.
Yield

Другой способ создать generator — использовать функцию генератора. Мы берём ключевое слово yield, чтобы вернуть generator в функции.
Давайте посмотрим, как сработает эта функция на fib, где возвращается generator с n числами Фибоначчи. 
Поток данных

С генератором мы создадим структуру данных с бесконечным количеством элементов. Этот вид последовательности элементов данных называется в информатике потоком данных (или “стрим”). С его помощью мы можем выражать концепции бесконечных последовательностей математическими методами. 
Декораторы в Python: Способ разделения задач

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

Мы можем сами определить декораторов. А также есть множество замечательных встроенных декораторов, готовых к использованию.

Например, статические методы в классе Python не привязаны к экземпляру или классу. Они включены в класс просто потому, что они логически принадлежат ему.
Размещение вашего скрипта на Python на Ubuntu-инстансе

Мой любимый метод закачки скрипта на Python на инстанс Ubuntu — это использовать Git.

Если есть конфигурационные файлы, которые нужны на вашем Ubuntu-инстансе, и вы не хотите хранить их на github, для переноса пользуйтесь Amazon S3.
Установка Python3.7 и PIP

Для установки Python и PIP я бы рекомендовал пользоваться веб-SSH через дашборд Lightsail.

А в папке репозитория выполните следующую команду. Она запустит код, приведённый ниже и установит Python3.7 вместе с PIP.
Установка библиотек Python

Следующим шагом установите питоновские библиотеки praw и pandas. Запустите серийный файл python_libraries.sh.

Praw — это враппер для API Python reddit.

Pandas — для манипуляций с данными и их анализа.
Списковое включение: Создайте список в одной строке кода

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

Со списковым включением мы можем поместить циклы for и условия if в одну строку кода для создания списка на Python:
Настройка службы Cron

Программная утилита Cron — это планировщик времени запуска служб в компьютерных ОС наподобие Unix. Пользователи, которые занимаются установкой и поддержкой программных окружений, пользуются Cron для планирования служб (команд или скриптов оболочки). Они запускают их периодически в определённое время, дни или другие интервалы. Это типичная автоматизация системной поддержки или администрирования, тем не менее природа общего назначения этого ПО делает его полезным для таких вещей, как скачивание файлов из интернета и загрузка почты через равные интервалы.
Создание задания Cron

Настройте редактор на значение vim при помощи такой команды. Войдите в Vim и отредактируйте службы Cron. В этой точке Vim запустится, а вы сможете вносить изменения в свои службы Cron.
Автоматизация скриптов на Python при помощи AWS Lightsail

Теперь вы закончили и ваш скрипт будет запускаться с интервалом, определённым в службе Cron. 

Если хотите проверить их, можете запустить командный crontab -l. Так вы увидите текущие службы Cron.
5 ошибок Python-разработчиков, которые выдают новичка. Давайте понятные имена функции и переменным

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

Это не только код по PEP, сколько отсутствие видимой логики и структуры в коде.

Главное, что надо всегда помнить, что код должен быть в первую очередь читаемым, а в идеале — еще и понятным. Тут нет предела совершенству, но в целом есть несколько простейших рекомендаций, которые позволят избежать даже не ошибок, сколько нелепых небрежностей.
Как преобразовать Word, Excel и PowerPoint в PDF в Python. Установите необходимые зависимости

Это решение опирается на Spire.Office for Python, который представляет собой комбинацию Spire.Doc for Python, Spire.XLS for Python, Spire.Presentation for Python и Spire.PDF for Python.

Как следует из названия, они представляют собой модули для обработки документов Word, Excel, PowerPoint и PDF соответственно.
5 ошибок Python-разработчиков, которые выдают новичка. Слабые знания СУБД

Джуна могут взять без опыта или знаний работы с СУБД, но в целом полезно знать, для чего обычно используется та или иная база данных, какие лучше использовать и в каких случаях.
Преобразование Excel XLS или XLSX в PDF в Python

Пользователи могут использовать метод Workbook.LoadFromFile(), предоставляемый Spire.XLS for Python, для загрузки файла XLS или XLSX.

Затем укажите настройки преобразования через свойства объекта Workbook.ConverterSetting.

После этого вся рабочая книга может быть преобразована в PDF с помощью метода Workbook.SaveToFile().