Pythoner
Ir al canal en Telegram
Полезные материалы по Python, которые будут интересны опытному и начинающему разработчику. Сотрудничество - @flattys Цены - @serpent_media Канал на бирже: https://telega.in/c/pythonercode
Mostrar más6 774
Suscriptores
-724 horas
-337 días
-5730 días
Archivo de publicaciones
6 774
🔤Transliterate в Python
Библиотека
Transliterate обеспечивает простой перевод текста между кириллицей и латиницей в Python. Установка производится командой pip install transliterate.
from transliterate import translit
text = "Привет, мир!"
transliterated_text = translit(text, 'ru', reversed=True)
print(transliterated_text)
🧑💻 Это удобное средство при работе с многоязычными данными. 📚Документация содержит дополнительные сведения и примеры использования.6 774
🐍Какая разница в быстродействии между django и Flask и почему?
🤩Django чуть медленнее Flask из-за своей более высокой функциональности и накладных расходов. Однако на практике разница в скорости работы между ними незначительна для большинства веб-приложений.
🤩Flask может быть немного быстрее при обработке простых запросов, но Django лучше масштабируется при увеличении нагрузки благодаря встроенным инструментам кэширования и оптимизации.
Кроме того, производительность в большей степени зависит от архитектуры и качества кода конкретного приложения.
6 774
❓Что такое Протоколы
Протоколы — это соглашения, которые определяют интерфейс класса и поведение его объектов.
Протоколы задаются с помощью специальных методов, таких как
str, len и другие.
Они позволяют классам работать с различными функциями и операторами языка.
Реализуя протоколы можно интегрировать классы в языке и делать их поведение естественным и интуитивным.
🐍В Python есть протоколы для чисел, итераторов, контекстных менеджеров, атрибутов и других областей.
Встроенные и сторонние библиотеки полагаются на стандартные протоколы.6 774
🕸 Что такое pywebcopy?
PyWebCopy - это инструмент на языке Python, который позволяет скачивать целые веб-сайты и их содержимое для локального использования.
➕ Основные возможности pywebcopy
PyWebCopy обладает несколькими основными функциями, которые делают его полезным инструментом для скачивания веб-сайтов:
1. Полное скачивание сайта: С помощью pywebcopy вы можете скачать целый веб-сайт, включая все его страницы, изображения, стили CSS и другие ресурсы. Это особенно полезно, когда требуется сохранить копию веб-сайта или работать с ним офлайн.
2. Обработка ссылок: PyWebCopy автоматически обрабатывает ссылки на другие страницы внутри веб-сайта и корректно настраивает их, чтобы они указывали на локально скачанные версии страниц. Это позволяет вам легко навигировать по веб-сайту и просматривать его содержимое в офлайн-режиме.
3. Поддержка фильтров: Вы можете настроить pywebcopy так, чтобы он скачивал только определенные типы файлов или игнорировал некоторые страницы. Это полезно, если вы хотите ограничить размер скачанного веб-сайта или избежать скачивания ненужной информации.
❓ Как использовать pywebcopy
Для использования pywebcopy вам потребуется установить его с помощью pip. После установки вы можете импортировать его в свой код Python и использовать.
Давайте рассмотрим простой пример использования pywebcopy для скачивания веб-сайта. Предположим, что у нас есть веб-сайт с URL-адресом "[https://www.example.com](https://www.example.com/)" и мы хотим скачать его для дальнейшего использования офлайн.
from pywebcopy import save_webpage
url = '<https://www.example.com>'
project_folder = 'example_website'
save_webpage(url, project_folder)
В этом примере мы использовали метод save_webpage из pywebcopy для скачивания веб-сайта по указанному URL и сохранения его в папке проекта "example_website". После выполнения этого кода, мы получим локальную копию веб-сайта, включая все его страницы и ресурсы.
https://pypi.org/project/pywebcopy/6 774
🐍 Серьёзная оптимизация Python кода
📝 Нашел интересную статью про Numba - Just In Time компилятор, который значительно ускоряет код. читайте и ускоряйте! ;)
6 774
❓Разбор
'b' in 'bbbb' выдаст нам True —> потому что левый элемент действительно присутствует в правом.
Перед этим выражением есть not, который превратит True в False
Перед not'ом есть еще not —> превратит назад в True
Еще not —> False
еще not —> True
Получится в конце if True —> условие выполняется.
Выдаст 1.
6 774
🤨 Для чего нам создавать ошибку? Raise exception в Python.
Иногда, при разработке программного обеспечения на Python, мы можем столкнуться с ситуациями, когда необходимо явно указать на наличие ошибки.
Когда мы пишем программы, мы стараемся их делать максимально надежными и безопасными. Однако, иногда может возникнуть ситуация, когда мы хотим явно указать на наличие проблемы. Например, если в функции передаются некорректные аргументы или программа не может продолжить выполнение из-за некорректного состояния. В таких случаях мы можем создать исключение с помощью оператора raise, чтобы прервать нормальное выполнение программы и показать, что что-то пошло не так.
➡️ Использование оператора raise
Оператор raise в Python позволяет нам создавать исключения вручную. Мы можем указать тип исключения и дополнительное сообщение, которое будет содержаться в исключении. Например, мы можем создать исключение типа ValueError, если функция получила некорректное значение аргумента. Мы также можем наследовать собственные классы исключений от встроенных классов, чтобы создать более специфичные исключения для наших нужд.
Вот пример использования оператора raise:
def divide_numbers(a, b):
if b == 0:
raise ValueError("Делитель не может быть нулем")
return a / b
try:
result = divide_numbers(10, 0)
print("Результат:", result)
except ValueError as e:
print("Ошибка:", str(e))
В этом примере мы определяем функцию divide_numbers, которая делит одно число на другое. Если второе число равно нулю, мы вызываем исключение ValueError с сообщением "Делитель не может быть нулем". Затем мы обрабатываем это исключение с помощью блока try-except, чтобы поймать и обработать ошибку.6 774
Медведь и заяц решили зайти в один телеграмм-канал…
Но не смогли поделить место на клавиатуре.
Медведь нажал на пробел и заяц нажал на пробел.
Так они и сидели, каждый на своем пробеле, пока не уснули.
Подписывайся на канал и не проспи Python! 😊
6 774
🖥Метод missing
Метод missing — это магический метод, который вызывается, когда попытка доступа к несуществующему ключу в словаре. По умолчанию метод
missing бросает исключение KeyError. Однако его можно переопределить, чтобы обеспечить другое поведение.
Общая форма метода missing выглядит следующим образом:
def __missing__(self, key):
# ...
Аргумент self представляет собой экземпляр словаря, в котором произошло обращение к несуществующему ключу. Аргумент key представляет собой сам несуществующий ключ.6 774
🖥Библиотека Astropy
🤩Astropy — это библиотека с открытым исходным кодом для Python, предназначенная для выполнения астрономических расчетов. Это широко используемая библиотека в среде профессиональных астрономов. Философия проекта предполагает максимальное переиспользование уже существующих научных пакетов.
🤩Astropy это мощный инструмент, который может использоваться для выполнения широкого спектра астрономических задач. Он является отличным выбором для астрономов, которые хотят использовать язык программирования Python для своих исследований.
6 774
🐍 Ещё одна пасхалка в виде встроенного модуля
Все смотришь как люди "hello world" пишут через print? А зачем, если можно сделать так:
import __hello__6 774
🐍 От SQL до Pandas
Большая и полезная шпаргалка с методами и примерами кода
🔵 Выборка
🔵 Фильтрация
🔵 Подсчет значений
🔵 Получение имен, типов данных и т.д
🔵 Вывод информационной статистики и д.р интересные вещи
6 774
🚀Оптимизация кода Python 🤔 Многие сталкиваются с проблемой, что кол очень долго выполняется, тобиж не оптимизирован. Сейчас мы это исправим. ➡️ Для примера возьмём функцию вычисления последовательности Фибоначчи:
def fibonacci(n):
if n <= 1:
return n
else:
return fibonacci(n-1) + fibonacci(n-2)
for i in range(50):
print(i, fibonacci(i))
😰 Если сейчас мы запустим код, то он будет выполняться ну очень долго. 😦
🧠 Теперь давайте изучим код. Если подумать, то понятно что у нас много раз просчитывается одни и те же значения. Так давайте будем сохранять то что уже посчитали! Для этого можно использовать декоратор lru_cache из встроенного модуля functools:
from functools import lru_cache
@lru_cache
def fibonacci(n):
if n <= 1:
return n
else:
return fibonacci(n-1) + fibonacci(n-2)
for i in range(50):
print(i, fibonacci(i))
😀 Так, данный код будет выполняться в рааазы быстрее.
¡Ya disponible! Investigación de Telegram 2025 — los principales insights del año 
