https://medium.com/@yeraydiazdiaz/asyncio-coroutine-patterns-errors-and-cancellation-3bb422e961ff - пример по обработке ошибок и логгированию с asyncio
#asyncio #exceptions #logging
#asyncio #exceptions #logging
Medium
Asyncio Coroutine Patterns: Errors and cancellation
This is the second part of a two part series on coroutine patterns in asyncio, to fully benefit from this article please read the first…
Никогда не стоит использовать f-strings для логгирования в python, такие строки будут выполняться вне зависимости от того, должна ли быть вызвана функция логгирования на текущем уровне. Стоит использовать старый формат для строк.
logger.info('Requests sent: %s success: %s errors: %s', self.request_sent, self.success, self.errors)
#logging #f_stringsЕсли вы хотите вызвать блокирующий метод из корутины и не заблокировать работу всего основного потока - вы можете вызвать ее в другом потоке используя AbstractEventLoop.run_in_executor(executor, func, *args):
fn = functools.partial(method, *args)#asyncio #functools
result = await loop.run_in_executor(None, fn)
Отличная статья о concurrent.futures - https://rednafi.github.io/digressions/python/2020/04/21/python-concurrent-futures.html Показаны примеры с использованием ThreadPoolExecutor и ProcessPoolExecutor.
#concurrent #futures #ThreadPoolExecutor #ProcessPoolExecutor
#concurrent #futures #ThreadPoolExecutor #ProcessPoolExecutor
Red’s Digressions
Effortless Concurrency with Python’s concurrent.futures
Running simple tasks concurrently with concurrent.futures
https://habr.com/ru/post/145835/ - метаклассы в python
В данной статье не показано как использовать метакласс, описанный классом, а не функцией. Вот пример:
#metaclass #type #object
В данной статье не показано как использовать метакласс, описанный классом, а не функцией. Вот пример:
>>> class Foo(metaclass=UpperAttrMetaclass):
... boo = 1
...
...
>>> f = Foo()
>>> f.boo
Traceback (most recent call last):
File "<input>", line 1, in <module>
f.boo
AttributeError: 'Foo' object has no attribute 'boo'
>>> f.BOO
1
#metaclass #type #object
Хабр
Метаклассы в Python
Как сказал один из пользователей StackOverflow, «using SO is like doing lookups with a hashtable instead of a linked list». Мы снова обращаемся к этому замечател...
https://pythonist.ru/samye-populyarnye-biblioteki-python-ispolzuemye-v-hakinge/ - библиотеки для работы с сетью и криптографией
#libraries #networking #cryptography
#libraries #networking #cryptography
Pythonist
Самые популярные библиотеки Python, используемые в хакинге
Python стал самым удобным языком среди пентестеров. Мы покажем наиболее популярные библиотеки Python для этичного взлома.
https://pythonist.ru/keshirovanie/ - статья со ссылками о кешировании веб приложений
#cache #redis #memcached
#cache #redis #memcached
Pythonist
Кэширование на сайтах: что это такое и зачем это нужно
Давайте разберемся, что такое кэширование, а также рассмотрим, какие ресурсы помогут программисту изучить этот вопрос поглубже.
https://ru.hexlet.io/blog/posts/izuchaem-prodvinutye-vozmozhnosti-python-chast-2-zamykaniya-dekoratory-modul-functools - статья по декораторам, а также здесь описаны замыкания(closures)
#decorators #closures
#decorators #closures
ru.hexlet.io
Изучаем продвинутые возможности Python, часть 2: замыкания, декораторы, модуль functools
В первой части серии публикаций о продвинутых возможностях Python мы познакомились с итераторами, генераторами и модулем itertools. В сегодняшней публикации речь пойдёт о замыканиях, декораторах и модуле functools.
https://towardsdatascience.com/implementing-grpc-server-using-python-9dc42e8daea0 - статья о использовании gRPC в python
#grpc #protobuf
#grpc #protobuf
Medium
Implementing gRPC server using Python
Your next API doesn’t need to be built with REST and JSON. How about gRPC and Protocol Buffers for better performance and structure?
https://pythonist.ru/best-practices-v-rabote-s-modelyami-django/ - Best Practicies по django ORM
#django #ORM #sql
#django #ORM #sql
Pythonist
Работаем с моделями Django (Python): Best Practices
Давайте посмотрим, какие подходы считаются лучшими при работе с моделями Django. Мы поговорим о таких вещах как нейминг, денормализация, дублирование полей.
https://habr.com/ru/company/yandex/blog/265569/ - советы по организации своих API сервисов использующих HTTP
#http #stucture
#http #stucture
Хабр
15 тривиальных фактов о правильной работе с протоколом HTTP
Внимание! Реклама! Пост оплачен Капитаном Очевидность! Ниже под катом вы найдёте 15 пунктов, описывающих правильную организацию ресурсов, доступных по протоколу HTTP — веб-сайтов, «ручек»...
https://habr.com/ru/post/273045/ - статья как реализован список в python с примерами кода на C
#cpython #list
#cpython #list
Хабр
Внутреннее устройство Python list
Предлагаю вашему вниманию статью, основанную на публикации Laurent Luce о реализации работы со списками в CPython. Она может быть полезна начинающим программистам на Python, либо готовящимся к...
https://testdriven.io/blog/django-debugging-vs-code/ - деббагинг djaongo проекта в контейнере с помощью vscode
#vscode #debugging #docker #django
#vscode #debugging #docker #django
testdriven.io
Debugging a Containerized Django App in VS Code
In this tutorial, we'll show you how to configure Visual Studio Code (VS Code) to debug a Django app running inside of Docker.