pretty_errors — модуль для повышения читаемости ошибок.
pretty_errors делает стандартный вывод исключений и их traceback более удобным для чтения :3
Это работает очень просто, чтобы модуль заработал, достаточно импортировать его в свой код.
Также модуль можно модифицировать, указав параметры в конфиге, что может быть полезно если вы всё равно не понимаете ошибки.
Более того, разные части вывода будут помечаться разным цветом вместо монотонного серого цвета.
Ставится командой ⚙
Документация и примеры кода здесь.
pretty_errors делает стандартный вывод исключений и их traceback более удобным для чтения :3
Это работает очень просто, чтобы модуль заработал, достаточно импортировать его в свой код.
Также модуль можно модифицировать, указав параметры в конфиге, что может быть полезно если вы всё равно не понимаете ошибки.
Более того, разные части вывода будут помечаться разным цветом вместо монотонного серого цвета.
Ставится командой ⚙
pip install pretty-errors
Документация и примеры кода здесь.
👍52🔥8
pyperclip — библиотека для работы с буфером обмена.
Здесь мы можем использовать всего два метода
Метод
В результате нам в консоль вернутся текущие данные хранящиеся в буфере обмена.
А метод
После выполнения данного кода если вы к примеру нажмете ctrl + v у вас из буфера будет извлечена строка 'Текст, который будет скопирован в буфер обмена.'
Вот в принципе все что вам необходимо знать для работы с данным модулем. Теперь вы в любой момент можете получать доступ к содержимому буфера обмена и работать с ним.
Стоит отметить, что данный модуль предназначен для работы с текстовыми данными. То есть если мы скопируем в буфер обмена какой то файл и попытаемся извлечь его с помощью pyperclip, в этом случаем будет возвращена пустая строка.
Кроссплатформенность
В Windows дополнительные модули не нужны.
На Mac этот модуль использует команды
В Linux этот модуль использует команды
В противном случае в Linux вам потребуются установленные модули
Ставится командой ⚙
Здесь мы можем использовать всего два метода
paste()
и copy()
.Метод
paste()
извлекает информацию(данные) из буфера обмена.В результате нам в консоль вернутся текущие данные хранящиеся в буфере обмена.
А метод
copy()
наоборот помещает данные в буфер обмена.После выполнения данного кода если вы к примеру нажмете ctrl + v у вас из буфера будет извлечена строка 'Текст, который будет скопирован в буфер обмена.'
Вот в принципе все что вам необходимо знать для работы с данным модулем. Теперь вы в любой момент можете получать доступ к содержимому буфера обмена и работать с ним.
Стоит отметить, что данный модуль предназначен для работы с текстовыми данными. То есть если мы скопируем в буфер обмена какой то файл и попытаемся извлечь его с помощью pyperclip, в этом случаем будет возвращена пустая строка.
Кроссплатформенность
В Windows дополнительные модули не нужны.
На Mac этот модуль использует команды
pbcopy
и pbpaste
, которые должны поставляться с пакетом os.В Linux этот модуль использует команды
xclip
или xsel
, которые должны поставляться с пакетом os. В противном случае запустите «sudo apt-get install xclip
» или «sudo apt-get install xsel
» (Примечание: xsel не всегда работает.)В противном случае в Linux вам потребуются установленные модули
gtk
или PyQt4
.Ставится командой ⚙
pip install pyperclip
Документация и примеры кода здесь :3👍38🔥7❤1
emoji - модуль, который облегчает работу с эмодзи.
Весь набор кодов Emoji, определенный консорциумом Unicode, поддерживается в дополнение к набору псевдонимов. По умолчанию включен только официальный список, но выполнение
По умолчанию используется английский язык
Испанский ('es'), Португальский ('pt'), Итальянский ('it'), Французский ('fr'), Немецкий ('de').
utils/get-codes-from-unicode-consortium.py может помочь при обновлении unicode_codes.py, но его работа не гарантируется. Вообще говоря, он очищает таблицу на веб-сайте Консорциума Unicode с помощью BeautifulSoup и выводит содержимое на стандартный вывод в более удобном формате.
Ставится командой ⚙
Документация и примеры кода здесь :3
Весь набор кодов Emoji, определенный консорциумом Unicode, поддерживается в дополнение к набору псевдонимов. По умолчанию включен только официальный список, но выполнение
emoji.emojize(language='alias')
включает как полный список, так и псевдонимы.По умолчанию используется английский язык
(language='en')
, но также поддерживаются следующие языки:Испанский ('es'), Португальский ('pt'), Итальянский ('it'), Французский ('fr'), Немецкий ('de').
utils/get-codes-from-unicode-consortium.py может помочь при обновлении unicode_codes.py, но его работа не гарантируется. Вообще говоря, он очищает таблицу на веб-сайте Консорциума Unicode с помощью BeautifulSoup и выводит содержимое на стандартный вывод в более удобном формате.
Ставится командой ⚙
pip install emoji
Документация и примеры кода здесь :3
👍31❤4🔥1🎉1
PyWebCopy — это бесплатный инструмент для локального копирования полных или частичных веб-сайтов на жесткий диск для просмотра в оффлайн режиме.
PyWebCopy просканирует указанный веб-сайт и загрузит его содержимое на ваш жесткий диск. Ссылки на такие ресурсы, как таблицы стилей, изображения и другие страницы веб-сайта, будут автоматически переназначены в соответствии с локальным путем. Используя его обширную конфигурацию, вы можете определить, какие части веб-сайта будут скопированы и как.
Функция
А вот
Что может PyWebCopy?
PyWebCopy проверит HTML-разметку веб-сайта и попытается обнаружить все связанные ресурсы, такие как другие страницы, изображения, видео, загрузки файлов — все и вся. Он загрузит все эти ресурсы и продолжит поиск других. Таким образом, WebCopy может «сканировать» весь веб-сайт и загружать все, что он видит, чтобы создать приемлемое факсимиле исходного веб-сайта.
Чего не может PyWebCopy?
PyWebCopy не включает виртуальную модель DOM или какую-либо форму синтаксического анализа JavaScript. Если веб-сайт интенсивно использует JavaScript для работы, маловероятно, что PyWebCopy сможет сделать точную копию, если он не сможет обнаружить весь веб-сайт из-за того, что JavaScript используется для динамической генерации ссылок.
PyWebCopy не загружает необработанный исходный код веб-сайта, он может загружать только то, что возвращает HTTP-сервер. Хотя он сделает все возможное для создания автономной копии веб-сайта, расширенные веб-сайты, управляемые данными, могут не работать должным образом после того, как они были скопированы.
Ставится командой ⚙
Документация и примеры кода здесь :3
PyWebCopy просканирует указанный веб-сайт и загрузит его содержимое на ваш жесткий диск. Ссылки на такие ресурсы, как таблицы стилей, изображения и другие страницы веб-сайта, будут автоматически переназначены в соответствии с локальным путем. Используя его обширную конфигурацию, вы можете определить, какие части веб-сайта будут скопированы и как.
Функция
save_webpage
скачивает страницу по указанной ссылке, в аргументы также можно передать путь, куда сохранить результат. А вот
save_website
дает возможность скачать целый вебсайт рекурсивно. Например, если сайт представляет из себя блог, то скрипт скачет все статьи, которые есть на сайте. Что может PyWebCopy?
PyWebCopy проверит HTML-разметку веб-сайта и попытается обнаружить все связанные ресурсы, такие как другие страницы, изображения, видео, загрузки файлов — все и вся. Он загрузит все эти ресурсы и продолжит поиск других. Таким образом, WebCopy может «сканировать» весь веб-сайт и загружать все, что он видит, чтобы создать приемлемое факсимиле исходного веб-сайта.
Чего не может PyWebCopy?
PyWebCopy не включает виртуальную модель DOM или какую-либо форму синтаксического анализа JavaScript. Если веб-сайт интенсивно использует JavaScript для работы, маловероятно, что PyWebCopy сможет сделать точную копию, если он не сможет обнаружить весь веб-сайт из-за того, что JavaScript используется для динамической генерации ссылок.
PyWebCopy не загружает необработанный исходный код веб-сайта, он может загружать только то, что возвращает HTTP-сервер. Хотя он сделает все возможное для создания автономной копии веб-сайта, расширенные веб-сайты, управляемые данными, могут не работать должным образом после того, как они были скопированы.
Ставится командой ⚙
pip install pywebcopy
Документация и примеры кода здесь :3
👍34🔥11🤩1
openNasa — проект, позволяющий получать фотографии NASA и создавать страницы с их описаниями.
Данный скрипт принимает настройки пользователя, затем на их основе делает запросы к NASA API, может формировать html-страницу, если этого хочет пользователь, или просто отображать результаты в терминале.
Результаты, кстати, не будут повторяться благодаря _history переменной.
Так же есть кастомизация программы. Для этого отредактируйте modules/config.py файл по своему вкусу :3
Подробнее про проект вы можете прочитать здесь.
Данный скрипт принимает настройки пользователя, затем на их основе делает запросы к NASA API, может формировать html-страницу, если этого хочет пользователь, или просто отображать результаты в терминале.
Результаты, кстати, не будут повторяться благодаря _history переменной.
Так же есть кастомизация программы. Для этого отредактируйте modules/config.py файл по своему вкусу :3
Подробнее про проект вы можете прочитать здесь.
👍30❤4
Rich — это библиотека Python для форматированного текста и красивого форматирования в терминале.
Rich содержит ряд встроенных средств рендеринга, которые можно использовать для создания элегантного вывода в интерфейсе командной строки и помощи в отладке кода.
Rich API упрощает добавление цвета и стиля к выходным данным терминала.
Rich также может отображать красивые таблицы, индикаторы выполнения, уценку, исходный код с подсветкой синтаксиса, трассировку и многое другое — прямо из коробки.
Rich, кстати, работает с Linux, OSX и Windows. True color / emoji работает с новым терминалом Windows, классический терминал ограничен 16 цветами. Rich требует Python 3.6.3 или более новую версию :3
Ставится командой ⚙
Документация и примеры кода здесь.
Rich содержит ряд встроенных средств рендеринга, которые можно использовать для создания элегантного вывода в интерфейсе командной строки и помощи в отладке кода.
Rich API упрощает добавление цвета и стиля к выходным данным терминала.
Rich также может отображать красивые таблицы, индикаторы выполнения, уценку, исходный код с подсветкой синтаксиса, трассировку и многое другое — прямо из коробки.
Rich, кстати, работает с Linux, OSX и Windows. True color / emoji работает с новым терминалом Windows, классический терминал ограничен 16 цветами. Rich требует Python 3.6.3 или более новую версию :3
Ставится командой ⚙
pip install rich
Документация и примеры кода здесь.
👍43🔥6❤5😢2🤯1
Textual — это фреймворк TUI (текстовый пользовательский интерфейс) для Python, вдохновленный современной веб-разработкой.
Textual использует Rich для визуализации форматированного текста, поэтому все, что Rich может отображать, может использоваться в Textual.
Обработка событий в Textual является асинхронной (с использованием ключевых слов asyncи await). Виджеты (компоненты пользовательского интерфейса) могут независимо обновляться и взаимодействовать друг с другом посредством обмена сообщениями.
Textual имеет больше общего с современной веб-разработкой, чем с curses; макет выполняется с помощью сетки CSS, и (скоро) тема может быть настроена с помощью CSS.
Ставится командой ⚙
Документация и примеры кода здесь :3
Textual использует Rich для визуализации форматированного текста, поэтому все, что Rich может отображать, может использоваться в Textual.
Обработка событий в Textual является асинхронной (с использованием ключевых слов asyncи await). Виджеты (компоненты пользовательского интерфейса) могут независимо обновляться и взаимодействовать друг с другом посредством обмена сообщениями.
Textual имеет больше общего с современной веб-разработкой, чем с curses; макет выполняется с помощью сетки CSS, и (скоро) тема может быть настроена с помощью CSS.
Ставится командой ⚙
pip install textual
Документация и примеры кода здесь :3
👍22❤1
Станьте Python-разработчиком на Хекслете
✔ Пройдите бесплатные вводные курсы, чтобы познакомиться с профессией.
✔ Если понравится — присоединяйтесь к обучению в группе с наставником
✔ Развивайте нетворкинг в 26-тысячном сообществе айтишников
✔ Выполняйте проекты, участвуйте в Open Source, готовьтесь к трудоустройству
P.S. У нас дружелюбная атмосфера, возможность учиться в своем темпе и совмещать учебу с работой. А еще комфортная рассрочка и гарантированный манибэк в течение двух недель, если передумали.
Присоединяйтесь!
✔ Пройдите бесплатные вводные курсы, чтобы познакомиться с профессией.
✔ Если понравится — присоединяйтесь к обучению в группе с наставником
✔ Развивайте нетворкинг в 26-тысячном сообществе айтишников
✔ Выполняйте проекты, участвуйте в Open Source, готовьтесь к трудоустройству
P.S. У нас дружелюбная атмосфера, возможность учиться в своем темпе и совмещать учебу с работой. А еще комфортная рассрочка и гарантированный манибэк в течение двух недель, если передумали.
Присоединяйтесь!
👍19😱3
🐍 А вы знали? Выпуск №27
Разница между == и is.
Python в целях производительности кеширует малые числа и короткие строки, поэтому возможны некоторые казусы, как в примере выше.
Оператор is сравнивает идентификаторы двух объектов, а оператор == сравнивает значения двух объектов. Существует разница в значении между равным и идентичным. И это различие важно, когда вы хотите понять, как ведут себя операторы сравнения в Python.
Оператор == используется, когда значения двух операндов равны, тогда условие становится истинным.
Оператор is возвращает значение True, если переменные по обе стороны оператора указывают на один и тот же объект, и False в противном случае.
Чтобы понять различия между операторами is и == посмотрите на пример выше.
Стоит отметить, что некоторые разработчики предполагают, что оператор is является оператором сравнения === (который есть в других ЯПах), но это совсем не верно.
Более подробно про различие этих двух операторов вы можете почитать здесь :3
Разница между == и is.
Python в целях производительности кеширует малые числа и короткие строки, поэтому возможны некоторые казусы, как в примере выше.
Оператор is сравнивает идентификаторы двух объектов, а оператор == сравнивает значения двух объектов. Существует разница в значении между равным и идентичным. И это различие важно, когда вы хотите понять, как ведут себя операторы сравнения в Python.
Оператор == используется, когда значения двух операндов равны, тогда условие становится истинным.
Оператор is возвращает значение True, если переменные по обе стороны оператора указывают на один и тот же объект, и False в противном случае.
Чтобы понять различия между операторами is и == посмотрите на пример выше.
Стоит отметить, что некоторые разработчики предполагают, что оператор is является оператором сравнения === (который есть в других ЯПах), но это совсем не верно.
Более подробно про различие этих двух операторов вы можете почитать здесь :3
👍27🤯2
playsound — кроссплатформенный модуль для воспроизведения аудиофайлов.
Модуль playsound содержит только одну вещь — функцию playsound.
Требуется один аргумент — путь к файлу со звуком, который вы хотите воспроизвести. Это может быть локальный файл или URL-адрес.
Существует необязательный второй аргумент, блок, для которого по умолчанию установлено значение True. Установка его в False заставляет функцию работать асинхронно.
Ставится командой ⚙
Краткая документация и примеры кода здесь :3
Модуль playsound содержит только одну вещь — функцию playsound.
Требуется один аргумент — путь к файлу со звуком, который вы хотите воспроизвести. Это может быть локальный файл или URL-адрес.
Существует необязательный второй аргумент, блок, для которого по умолчанию установлено значение True. Установка его в False заставляет функцию работать асинхронно.
Ставится командой ⚙
pip install playsound
Краткая документация и примеры кода здесь :3
👍46🔥6🤔2🤯2❤🔥1😢1
jgram — библиотека для написания телеграмм ботов, что позволяет описывать их структуру в json файлах.
Jgram создан для того, чтобы можно было быстро и удобно писать телеграм-ботов, размещая их структуру в файлах .json Jgram на основе фреймворка AIOgram-2.21.
Ставится командой ⚙
Подробнее про jgram мы можете почитать здесь :3
Jgram создан для того, чтобы можно было быстро и удобно писать телеграм-ботов, размещая их структуру в файлах .json Jgram на основе фреймворка AIOgram-2.21.
Ставится командой ⚙
pip install jgram
Подробнее про jgram мы можете почитать здесь :3
👍34🤩5😁1🤔1🤯1