Python Nation🐍🇺🇦
2.86K subscribers
237 photos
2 files
158 links
Канал для всіх, хто вивчає Python: поради, приклади коду, бібліотеки, лайфхаки та актуальні новин👨‍💻🐍

По всім питанням👉 @giorg_jr

❗️Канал регулярно очищується від неактивних підписників❗️
Download Telegram
Как преобразовать напечатанный текст в рукописный текст с помощью Python?

Ответ простой! Используйте библиотеку pywhatkit для этой задачи.
Результат сохраняется на одном уровне с исполняемым скриптом в виде PNG изображения.

К сожалению с кириллицей не работает.

Перед запуском кода установите пакет
pywhatkit:
pip install pywhatkit
Почему Python медленно работает?

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

Тем не менее, всегда есть способы оптимизировать ваши приложения на Python с помощью асинхронности, инструментов профилирования и использования нескольких интерпретаторов. А для приложений, где время запуска неважно будет полезен JIT-компилятор, и соответственно интерпретатор PyPy. Для тех же частей вашего кода, где производительность критична и у вас при этом имеется много статически типизированных переменных, в качестве наиболее оптимального варианта может стать использование Cython.
Как можно догадаться по названию, функция filter() используется для перебора итерируемых объектов и последовательностей, таких как списки, кортежи и словари. Но перед ее использованием нужно также иметь подходящую функцию, которая бы проверяла каждый элемент на валидность. Если элемент подходит, он будет возвращаться в вывод.

#встроенные_функции #filter @pythonnation
Скачиваем web-сайт целиком

pywebcopy поможет вам клонировать отдельные веб-страницы или даже целые сайты.
Перед использованием установите пакет:
pip install pywebcopy

Функция save_webpage скачивает страницу по указанной ссылке, в аргументы также можно передать путь, куда сохранить результат.

А вот save_website дает возможность скачать целый вебсайт рекурсивно. Например, если сайт представляет из себя блог, то скрипт скачет все статьи, которые есть на сайте.

Но здесь надо быть аккуратнее, подобная рекурсивная загрузка отправит много запросов к серверу и может сильно нагрузить его, если на сайте много страниц.

Python Nation🐍
Метод bin()

Данный метод преобразует и возвращает двоичное значение эквивалентное заданному целому числу. Если параметр не является целым числом, он должен реализовать метод __index__() для возврата целого числа.

В данном примере мы отправили объект класса Quantity в bin() метод. bin() метод не вызывает ошибку, даже если объект Quantity не является целым числом.

Это потому, что мы реализовали __index__() метод, который возвращает целое число (сумма количества фруктов). Затем это целое число передается bin() методу.

#встроенные_функции #bin @pythonnation
Reduce весьма полезная функция для выполнения вычислений на списке и возвращения единственного результата. Она сворачивает список, применяя полученную в качестве аргумента функцию по очереди к последовательным парам элементов.
Например, если мы хотим посчитать произведение всех элементов списка чисел. Пример на картинке👆

#reduce
11 проектов на Django для начинающих

Создать собственный проект — это лучший способ изучить Django или любой другой фреймворк. Проектно-ориентированный подход к обучению вообще значительно лучше простого проглатывания теоретических концепций.

В данной статье мы постараемся вам дать не только идеи, но и ресурсы, которые помогут их реализовать.

👉Читать статью

Python Nation🐍
Скачиваем web-сайт целиком

pywebcopy поможет вам клонировать отдельные веб-страницы или даже целые сайты.
Перед использованием установите пакет:
pip install pywebcopy

Функция save_webpage скачивает страницу по указанной ссылке, в аргументы также можно передать путь, куда сохранить результат.

А вот save_website дает возможность скачать целый вебсайт рекурсивно. Например, если сайт представляет из себя блог, то скрипт скачет все статьи, которые есть на сайте.

Но здесь надо быть аккуратнее, подобная рекурсивная загрузка отправит много запросов к серверу и может сильно нагрузить его, если на сайте много страниц.

Python Nation🐍
Выражения генераторы

Интересное расширение Python, обобщающее list comprehension, — выражения-генераторы.
Они работают совершенно аналогично list comprehension, только без создания в памяти собственно списка. Числа создаются по ходу дела, без сохранения их явным образом в списке.

Например, вместо вычисления квадратов первых 20 натуральных чисел с помощью list comprehension:

sum([x*x for x in range(20)])

можно воспользоваться выражением-генератором:

sum(x*x for x in range(20))

Использование данного способа ускоряет выполнение программы.
Мало кто заметил новый оператор в Python3.8

Вокруг него появилось много споров и мифов.
Постараюсь в ближайшем видео показать его основные
возможности, чтобы прояснить ситуацию.

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

👉Дока по данному оператору

Python Nation🐍
Метод bin()

Данный метод преобразует и возвращает двоичное значение эквивалентное заданному целому числу. Если параметр не является целым числом, он должен реализовать метод __index__() для возврата целого числа.

В данном примере мы отправили объект класса Quantity в bin() метод. bin() метод не вызывает ошибку, даже если объект Quantity не является целым числом.

Это потому, что мы реализовали __index__() метод, который возвращает целое число (сумма количества фруктов). Затем это целое число передается bin() методу.

#встроенные_функции #bin @pythonnation
Привет👋 На канале давно не было активности😢 Давайте посмотрим сколько нас и откуда мы🚀
Anonymous Poll
17%
Україна
58%
Россия
5%
Беларусь
5%
Казахстан
15%
Другая страна(напиши в комментариях)
🔍 Інтроспекція в Python: як програмі бачити себе зсередини

Інтроспекція — це здатність програми досліджувати свою структуру під час виконання. У Python це зручно реалізовано через вбудовані функції.

Ось декілька корисних прикладів:

type(obj) — визначає тип об’єкта.
dir(obj) — показує доступні атрибути та методи.
getattr(obj, attr) — отримує значення атрибута.
isinstance(obj, class) — перевіряє, чи об'єкт є екземпляром класу.
help(obj) — виводить документацію об'єкта.

Це корисно для:
🔹дебагінгу та аналізу об'єктів
🔹динамічного створення функцій чи класів
🔹розробки IDE, автозаповнення або генерації документації

Пам’ятайте, що надмірне використання інтроспекції може ускладнити код. Використовуйте її з розумом! 🐍