Forwarded from Python 🇺🇦
Перекладаємо Python на людську мову
Знайшов цікавий пакет
Наприклад, зі складного об'єкта
Що ще крутіше, окрім англійської, пакет підтримує багато інших мов, включаючи українську. Почитайте їхню документацію, там багато цікавих функцій.
#practice // Python 🇺🇦
Знайшов цікавий пакет
humanize, який може переводити числа і дати в текст, що легко читається. Тобто всі костилі для таких завдань відразу замінюються буквально одним рядком.Наприклад, зі складного об'єкта
timedelta можна отримати "2 дні, 1 годину і 33.12 секунд" або "5.00 x 10²" з числа 500. Більше прикладів можете подивитися на прикріпленій картинці.Що ще крутіше, окрім англійської, пакет підтримує багато інших мов, включаючи українську. Почитайте їхню документацію, там багато цікавих функцій.
#practice // Python 🇺🇦
Forwarded from Технотренды
🐍 Необычный Python в обычных библиотеках
Специалист в Data Science из Amazon буквально прочитал код самых распространённых библиотек Python. В этом материале он делится секретами работы с Python, о которых узнал из этих библиотек. За подробностями приглашаем под кат к старту нашего флагманского курса по Data Science:
⤷ Читать статью на сайте
#Python
Специалист в Data Science из Amazon буквально прочитал код самых распространённых библиотек Python. В этом материале он делится секретами работы с Python, о которых узнал из этих библиотек. За подробностями приглашаем под кат к старту нашего флагманского курса по Data Science:
⤷ Читать статью на сайте
#Python
Forwarded from Python 🇺🇦
Друзі, нагадуємо про чат для ком'юніті Python ентузіастів!
Додавайтесь, якщо у вас виникають запитання, або ж ви хочете поділитися своїми думками стосовно тої чи іншої теми.
Давайте спілкуватися!
Додавайтесь, якщо у вас виникають запитання, або ж ви хочете поділитися своїми думками стосовно тої чи іншої теми.
Давайте спілкуватися!
Forwarded from Python 🇺🇦
Редагуємо відео
Пакет
Розібратися з пакетом не складно, базове використання показано на зображенні. У прикладі ми відкриваємо два відео, склеюємо в одне, обрізаємо отриманий кліп, зменшуємо гучність звуку і в кінці зберігаємо результат.
Тут ще важливо відзначити, що запуск та виконання скриптів з обробкою відео може зайняти досить великий час.
Такий пакет корисний у випадках, коли потрібно обробити дуже багато відео за одним і тим же принципом.
#practice // Python 🇺🇦
Пакет
moviepy дозволяє обрізати та склеювати відео, додавати відеоефекти й редагувати звук.Розібратися з пакетом не складно, базове використання показано на зображенні. У прикладі ми відкриваємо два відео, склеюємо в одне, обрізаємо отриманий кліп, зменшуємо гучність звуку і в кінці зберігаємо результат.
Тут ще важливо відзначити, що запуск та виконання скриптів з обробкою відео може зайняти досить великий час.
Такий пакет корисний у випадках, коли потрібно обробити дуже багато відео за одним і тим же принципом.
#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Завантажуємо вебсайти повністю
Максимально простий, але потужний пакет
Функція
А ось
Але тут треба бути акуратнішим, подібне рекурсивне завантаження може надіслати багато запитів до сервера і сильно навантажити його.
#practice // Python 🇺🇦
Максимально простий, але потужний пакет
pywebcopy допоможе вам клонувати окремі веб-сторінки або навіть цілі сайти.Функція
save_webpage завантажує сторінку за вказаним посиланням, в аргументи також можна передати шлях, куди зберегти результат.А ось
save_website дає можливість завантажити весь сайт рекурсивно. Наприклад, якщо сайт є блогом, то скрипт скаче всі статті, які є на сайті.Але тут треба бути акуратнішим, подібне рекурсивне завантаження може надіслати багато запитів до сервера і сильно навантажити його.
#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Спрощена робота з JSON
Є один цікавий пакет
Основні приклади використання показані на зображенні. Метод
Взагалі можливостей у пакета достатньо, тому він гідний вивчення та застосування у проектах. Докладніше можна почитати в документації.
#practice // Python 🇺🇦
Є один цікавий пакет
JMESpath, який дозволяє декларативно вказати, як витягувати елементи з документа JSON.Основні приклади використання показані на зображенні. Метод
search приймає патерн, яким потрібно витягти дані, і навіть словник (схожий на JSON).Взагалі можливостей у пакета достатньо, тому він гідний вивчення та застосування у проектах. Докладніше можна почитати в документації.
#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Отримуємо дані про систему
Кросплатформова бібліотека
Якщо говорити про практичне застосування,
Крім звичних Windows, MacOS та Linux, бібліотека також підтримує системи FreeBSD, OpenBSD, NetBSD, Sun Solaris та AIX.
#practice // Python 🇺🇦
Кросплатформова бібліотека
psutil дозволяє отримувати інформацію про процесор, пам'ять, диск, мережу, датчики і запущені процеси в системі. Приклади базового використання показані на зображенні.Якщо говорити про практичне застосування,
psutil корисний в основному для моніторингу системи, обмеження ресурсів процесів та управління запущеними процесами.Крім звичних Windows, MacOS та Linux, бібліотека також підтримує системи FreeBSD, OpenBSD, NetBSD, Sun Solaris та AIX.
#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
infinity
Взагалі
Рядкові літерали '
Такий прийом може бути корисним у коді, де потрібно зберігати в змінній найбільше чи найменше числове значення для подальшого порівняння.
#practice // Python 🇺🇦
Взагалі
float є дуже цікавим типом даних і не перестає дивувати своїми особливостями. Про значення Not a Number ми вже писали раніше, а сьогодні поговоримо про infinity.Рядкові літерали '
inf' та 'infinity' можна конвертувати в float, і в результаті виходить значення нескінченності. Для негативної "нескінченності" необхідно поставити знак мінуса перед словом.Такий прийом може бути корисним у коді, де потрібно зберігати в змінній найбільше чи найменше числове значення для подальшого порівняння.
#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Надсилаємо універсальні повідомлення
Вашій увазі цікавий пакет
У функцію
Якщо не впевнені, які аргументи потрібно передати для надсилання повідомлення, то можете подивитися їх через атрибут
Наприклад, для Telegram потрібно передати токен бота, айді чату і саме повідомлення. У випадку з поштою необхідно вказати логін, пароль, адресата та повідомлення.
#practice // Python 🇺🇦
Вашій увазі цікавий пакет
notifiers, який дозволяє відправляти повідомлення на пошту через Telegram бота, в Слек і ще багато куди. Всього доступно 16 провайдерів, детальніше про них у документації.У функцію
get_notifier передаємо назву провайдера у вигляді рядка та отримуємо об'єкт, з яким можна працювати. Надіслати повідомлення можна за допомогою універсального методу notify.Якщо не впевнені, які аргументи потрібно передати для надсилання повідомлення, то можете подивитися їх через атрибут
required у створеного об'єкта.Наприклад, для Telegram потрібно передати токен бота, айді чату і саме повідомлення. У випадку з поштою необхідно вказати логін, пароль, адресата та повідомлення.
#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Використання zip
Функція
👀 Відео, де автор докладно описує роботу цієї функції на конкретних прикладах.
#practice // Python 🇺🇦
Функція
zip() приймає елементи, об'єднує їх в кортеж і повертає його. Якщо передані ітератори мають різну довжину, ітератор із найменшою кількістю елементів визначає довжину нового ітератора. 👀 Відео, де автор докладно описує роботу цієї функції на конкретних прикладах.
#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Відловлюємо помилки за допомогою assert
Інструкція
Якщо виконати інструкцію
Однак не потрібно намагатися обробити виняток
У прикладі ми перевірили, чи є переданий аргумент числовим типом даних. Якщо ні, то буде викликано виняток та виведено вказане повідомлення.
#practice // Python 🇺🇦
Інструкція
assert приймає логічний вираз та необов'язкове повідомлення. Вона використовується для перевірки типів, значень аргументу та виведення функції, а також для налагодження, оскільки зупиняє програму у разі помилки.Якщо виконати інструкцію
assert з логічним виразом, результат якого дорівнює True, нічого не станеться. Але у випадку з False буде згенеровано виняток AssertionError.Однак не потрібно намагатися обробити виняток
AssertionError блоком try-except. У такому разі assert втрачає свій сенс.У прикладі ми перевірили, чи є переданий аргумент числовим типом даних. Якщо ні, то буде викликано виняток та виведено вказане повідомлення.
#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Розділюємо цілі числа
Важко візуально розрізнити цілі числа подібні
Але Python дозволяє використовувати нижнє підкреслення як роздільник для покращення читабельності.
Наприклад,
#practice // Python 🇺🇦
Важко візуально розрізнити цілі числа подібні
10000000 та 100000000. Використовувати коми, як в англійській мові, не вийде.Але Python дозволяє використовувати нижнє підкреслення як роздільник для покращення читабельності.
Наприклад,
1_000_000 інтерпретуватиметься як ціле число 1000000.#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Дізнаємося кодування тексту
Думаю, у всіх були ситуації, коли ви відкрили файл або отримали відповідь від сервера, а всередині виявлявся набір дивних символів у незрозумілому кодуванні.
Пакет
У прикладі на картинці ми отримали відповідь на запит до сервера, взяли його вміст і перевірили кодування через цей метод.
#practice // Python 🇺🇦
Думаю, у всіх були ситуації, коли ви відкрили файл або отримали відповідь від сервера, а всередині виявлявся набір дивних символів у незрозумілому кодуванні.
Пакет
chardet був створений для роботи з кодуванням. Його метод detect видає передбачуване кодування з точністю від 0 до 1.У прикладі на картинці ми отримали відповідь на запит до сервера, взяли його вміст і перевірили кодування через цей метод.
#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Тимчасові файли
У стандартній бібліотеці Python є модуль
Функція
Створений тимчасовий файл буде видалено автоматично після закриття файлу або при виході з контекстного менеджера.
Також інші процеси та програми не зможуть отримати доступ до цього тимчасового файлу.
#practice // Python 🇺🇦
У стандартній бібліотеці Python є модуль
tempfile, який містить класи та методи для коректної роботи з тимчасовими файлами та директоріями.Функція
TemporaryFile створює тимчасовий файл у системній директорії та повертає файлоподібний об'єкт.Створений тимчасовий файл буде видалено автоматично після закриття файлу або при виході з контекстного менеджера.
Також інші процеси та програми не зможуть отримати доступ до цього тимчасового файлу.
#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Підключаємося до сервера по ssh
Пакет
Використовувати модуль досить просто, приклад основних методів на зображенні вище. До речі, цікавий факт, Paramiko - це поєднання слів "параноїк" та "друг" мовою есперанто.
Встановлюється пакет звичним чином через пакетний менеджер pip. Документацію можна переглянути тут.
#practice // Python 🇺🇦
Пакет
paramiko дозволяє встановлювати з'єднання з віддаленими машинами за протоколом SSH2 і робити там ті самі операції, якби ви підключалися через, наприклад, утиліту ssh на лінуксі.Використовувати модуль досить просто, приклад основних методів на зображенні вище. До речі, цікавий факт, Paramiko - це поєднання слів "параноїк" та "друг" мовою есперанто.
Встановлюється пакет звичним чином через пакетний менеджер pip. Документацію можна переглянути тут.
#practice // Python 🇺🇦