Функция sub в regex может принимать функцию в качестве аргумента repl.
📄 Из документации:
If repl is a function, it is called for every non-overlapping occurrence of pattern. The function takes a single match object argument, and returns the replacement string.
То есть для каждого совпадения будет вызвана функция для вычисления замены вместо замены на одну и ту же строку для всех совпадений.
Иными словами, для замены разных совпадений на разные строки не потребуется запускать re.sub() много раз для каждой строки замены. Достаточно определить функцию, которая вернёт строку для каждого из совпадений.
Описание слишком запутанное🤔, давайте лучше рассмотрим на простом примере:
Создаем карту замены. То есть какие строки на какие требуется менять.
remap = {
'раз': '1',
'два': '2',
'три': '3',
'четыре': '4',
'пять': '5',
}
Пишем функцию поиска строки для замены. Единственным аргументом будет объект re.Match.
Используя данные этого объекта мы вычисляем замену on-the-fly!
def get_str(match: re.Match):
word = match.group(1)
return remap.get(word.lower()) or word
Пример текста.
text = '''Раз Два Три Четыре Пять
Вместе будем мы считать
Пять Четыре Три Два Раз
Мы считать научим вас
'''
Теперь запускаем re.sub и вместо строки замены (repl) подаём имя функции.
(Данный паттерн ищет отдельные слова в тексте)
>>> print(re.sub(r'(\w+)', get_str, text))
1 2 3 4 5
Вместе будем мы считать
5 4 3 2 1
Мы считать научим вас
Думаю, достаточно наглядно 🤓
#libs#regex
#Kalshi
Kalshi заранее заблокирует торговлю для спортсменов и политиков
Kalshi собирается заранее ограничить доступ к рынкам для спортсменов, тренеров, судей и других участников спортивных событий. Аналогичный запрет введут и для политиков в рынках, связанных с их собственными кампаниями.
Раньше такие сделки уже запрещались правилами платформы, но теперь Kalshi хочет не просто запрещать их формально, а технически не допускать до торгов с самого начала. Для этого компания подключает внешних подрядчиков, включая IC360, чтобы проверять таких пользователей еще на этапе регистрации.
Шаг идет на фоне растущего давления на рынки прогнозов из-за риска инсайда и манипуляций. В тот же день Polymarket ужесточил свои правила добросовестности рынка, а в Сенате США внесли законопроект, который должен запретить регулируемым CFTC площадкам рынки на спорт и казино.
⚡️ Breaking: #Kalshi is set to launch crypto trading with perpetual futures on April 27!
The #CFTC-regulated prediction market giant is entering the crypto derivatives space, offering perpetual contracts for continuous trading on $BTC, $ETH, and more.
🚀 Ставки сделаны: Gemini — фаворит гонки ИИ к концу 2025 года
Трейдеры на платформе прогнозов Kalshi уверенно ставят на победу Google Gemini в гонке искусственного интеллекта. 59% участников считают, что именно эта модель станет ведущей к концу 2025 года, оставив позади ChatGPT (20%) и Grok (14%). Общий оборот рынка превысил $7,4 млн, а итоги подведут 31 декабря 2025 года на основе данных рейтинга LM Arena.
Почему именно Gemini? Модель лидирует в ключевых бенчмарках (текст, поиск, разработка), демонстрирует превосходную скорость обработки и глубоко интегрирована в экосистему Google. В то время как конкуренты сталкиваются с проблемами: OpenAI — с критикой новых версий, Grok — со скандалами, а такие сильные игроки, как DeepSeek, — с высокими затратами и инфраструктурными вызовами, что мешает им удержать рыночное внимание.
#ИИ#Gemini#Kalshi#прогнозы
Пс. Картинка сделана ChatGPT на основании данного поста, понятно, почему не он первый? Очень похоже на ляпы в презентации Gpt-5.
https://t.me/semasci