Ранее я делал серию постов про битовые операторы.
Вот вам ещё один наглядный пример как это используется в Python в модуле re.
Чтобы указать флаг для компилятора нам надо указать его после передаваемой строки. Например, добавляем флаг для игнорирования переноса строки.
pattern = re.compile(r"(\w+)+")
words = pattern.search(text, re.DOTALL)
А как указать несколько флагов? Ведь явно будут ситуации когда нам потребуется больше одного. Кто читал посты по битовые операторы уже понял как.
pattern.search(text, re.DOTALL | re.VERBOSE)
А теперь смотрим исходники, что находится в этих атрибутах?
Не удивительно, степени двойки. Почему? Потому что каждое следующее значение это сдвиг единицы влево.
>>> for n in [1, 2, 4, 8, 16, 32, 64, 128, 256]:
>>>
print(bin(n))
0b1
0b10
0b100
0b1000
0b10000
0b100000
0b1000000
0b10000000
0b100000000
Чтобы было понятней, давайте напишем тоже самое но иначе, добавим ведущие нули:
000000001
000000010
000000100
000001000
000010000
000100000
001000000
010000000
100000000
Не понятно что тут происходит? Читай три поста про битовые операторы начиная с этого ➡️https://t.me/pythonotes/45
В общем, это пример применения побитовых операций в самом Python.
Теперь вы знаете Python еще немного лучше)
#tricks#regex#libs
http://aiohttp.readthedocs.io/en/stable/web.html#aiohttp-web-websockets
In order to implement a #web_server, first create a #request handler.
A request handler is a coroutine or regular function that accepts a Request instance as its only parameter and returns a Response instance:
#aiohttp#asyncio
from aiohttp import web
async def hello(request):
return web.Response(text="Hello, world")
Next, create an Application instance and register the request handler with the application’s #router on a particular HTTP method and path:
https://github.com/aio-libs/aiohttp/blob/master/docs/web_reference.rst
Server Reference
#asyncio#aiohttp#Request#BaseRequest#Server#client#Router#Resource
#typescript#ai_gateway#gateway#generative_ai#hacktoberfest#langchain#llama_index#llmops#llms#openai#prompt_engineering#router
The AI Gateway by Portkey lets you connect to over 1600 AI models quickly and securely through one simple API, making it easy to integrate any language, vision, or audio AI model in under two minutes. It ensures fast responses with less than 1ms latency, automatic retries, load balancing, and fallback options to keep your AI apps reliable and scalable. It also offers strong security with role-based access, guardrails, and compliance with standards like SOC2 and GDPR. You can save costs with smart caching and optimize usage without changing your code. This helps you build powerful, cost-effective, and secure AI applications faster and with less hassle.
https://github.com/Portkey-AI/gateway
YouTube Issues and Economic Updates
🔧 Users in Russia report ongoing issues with YouTube, marking another decrease in platform traffic, as confirmed by Google.
📊 The Russian Communications Ministry (RKN) plans to acquire data on user attempts to access blocked sites, though it already collects some relevant data.
⚙️ The Ministry of Economic Development aims to increase processing limits to enhance labor market flexibility amid personnel shortages.
📈 Predictions suggest the information security market in 2024 could grow by 30% to reach 593 billion rubles, though other estimates are lower.
📺 Yandex is negotiating with Haier, TCL, and Huawei for the installation of its OS on all their TVs supplied to Russia.
💰 AI search engine Perplexity successfully raised $500 million at a valuation of $9 billion, a significant increase from its earlier valuation of $1 billion.
🇺🇸 In the US, an investigation has been initiated against TP-Link over national security concerns, as they hold 65% of the domestic router market.
#YouTube#RKN#EconomicDevelopment#MarketGrowth#InformationSecurity#Yandex#Perplexity#Funding#TPLink#NationalSecurity#Russia#TechNews#AI#Router#Television#DataPrivacy#UserExperience#TrafficIssues