Функция 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
#Russia#Moscow#Snowfall#ExtremeWeather#Anomaly#climate#destruction#anomaly#climatecrisis
🇷🇺❄️🌨️Рекордный снегопад обрушился на Москву, Россия
В ночь 27 апреля 2026 годаМосква столкнулась с необычно сильным снегопадом, в результате которого за короткое время выпало около 12 см снега — установив рекорд для 27 апреля.
❄️ Снегопад сопровождался сильными ветрами, значительно ухудшившими условия. В городе был объявлен оранжевый предупреждение о погоде.
⚠️ Сообщения свидетельствуют о ледяных дорогах, упавших деревьях и снижении видимости.
✈️ Суровые погодные условия сильно повлияли на транспорт: более 50 рейсов были задержаны или отменены, а также были нарушены железнодорожные перевозки.
📉 Такие условия считаются очень необычными для конца апреля, что подчеркивает резкую изменчивость климата.
#France#snow#snowfall#extremeweather#weatheranomaly#climatechange#climate#destruction#anomaly#climatecrisis#weather
🇫🇷Франция — снегопады в южных и восточных регионах
⛄️ 25–26 марта 2026 года южные и восточные регионы Франции пострадали от снегопадов, что является необычным явлением для конца марта.
❄️ Осадки привели к ухудшению дорожных условий, с накоплением снега в некоторых районах и нарушениями движения транспорта.
🌡️ Такие погодные условия в это время года свидетельствуют об атмосферной нестабильности и контрастных температурных паттернах, все чаще наблюдаемых по всей Европе.
#SaudiArabia#AlLawz#snow#extremeweather#weatheranomaly#climatechange#climate#destruction#anomaly#climatecrisis#weather
🇸🇦Саудовская Аравия — сообщается о снегопадах на горе Аль-Лауз
⛄️ 26 марта 2026 года снегопады были зарегистрированы на горе Аль-Лауз в Саудовской Аравии — редкое и поразительное явление для региона, известного своим преимущественно засушливым климатом.
❄️ Кадры из этого района показывают покрытые снегом склоны, привлекающие внимание жителей и пользователей социальных сетей. Хотя такие условия могут возникать в этом горном районе, они остаются необычными для страны в целом.
🌡️ Эти события подчеркивают контрастные погодные условия в регионе, где сильные дожди и град затрагивают одни районы, в то время как снегопады наблюдаются в других.
#India#Storm#Bihar#Patna#ClimateChange#ExtremeWeather
#climate#destruction#Weather#anomaly#climatecrisis
🇮🇳 Индия:Сильный шторм обрушился на Патну
🌧️ 8 мая 2026 года
Мощный шторм с сильными ветрами и проливными дождями обрушился на Патну, столицу штата Бихар в Индии.
Сильные ветра и проливные дожди вызвали значительные нарушения в городе. Такие внезапные и интенсивные штормы становятся все более частыми в регионе.
#Afghanistan#flashflood#flooding#waterflow#transport#danger#extremeweather#weatheranomaly#climatechange#climate#destruction#anomaly#climatecrisis#weather
🇦🇫Афганистан — Мощный поток воды перевернул автобус на шоссе Герат–Кабул
🌊 28 марта 2026 года автобус с пассажирами пытался пересечь затопленный участок шоссе Герат–Кабул, но был смыт мощным потоком воды.
🚌 На кадрах видно, как транспортное средство теряет устойчивость и переворачивается, создавая опасную ситуацию для находившихся внутри людей.
⚠️ Подобные инциденты происходят во время ливневых паводков, когда уровень воды и интенсивность потока могут быстро возрастать, делая пересечение дорог чрезвычайно опасным.
#The_Bloomberg🇺🇸📕[PDF]⬇️
#November2025
#Monthly_Magazines
For learning, for free(dom).
@backupofmagazines
This issue pits #GavinNewsom against a shifting #USPolitics map while probing the supposed #AIBubble, from frothy valuations to real-world productivity. A climate-forensics read asks whether #CloudSeeding worsened Dubai’s deadly storm—at the nexus of #ExtremeWeather and #ClimateChange. The geo-economics file tracks India’s wobbling investments, China’s expanding #Ports, and weaponized #SupplyChains. For investors, the issue weighs #ETFs, #401k tweaks, #BigTech concentration risk, and hedges in #Europe and #Gold. Lifestyle detours sample Utah powder and the dive-bar revival. It’s a brisk tour of power, money, and culture in a volatile world. #Markets#Investing#Energy#MiddleEast#Africa#Healthcare#Birkenstocks