Функция 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
⬛️Iqtisodiy faktlar...
🇺🇸AQShdagi Buyuk retsessiya: sabablari, oqibatlari va saboqlari
💵Ushbu iqtisodiy beqarorlik davri 1930-yillardagiBuyuk Depressiyadan keyingi eng jiddiy inqiroz deb hisoblanadi. “Buyuk retsessiya” atamasi 2007-yil dekabridan 2009-yil iyunigacha davom etgan AQSh tanazzuliga ham, 2009-yilda sodir bo‘lgan jahon iqtisodiytanazzulga ham aloqador.
🔎Batafsil
🚩 Великая рецессия в США: причины, последствия и уроки
📊Этот период экономической нестабильности считается самым серьёзным кризисом со времён Великой депрессии 1930-х годов. Термин «Великая рецессия» относится как к рецессии в США, продолжавшейся с декабря 2007 по июнь 2009 года, так и к глобальному экономическому спаду, который последовал в 2009 году.
🔎Подробнее
#GraduateSchool#Recession#Decrease#Economy
🔝Web-site |🔝Facebook | 🔝Instagram | 🔝Youtube
📕Iqtisodiy atamalar...
📈 Ushbu davrda kompaniyalar xarajatlarni qisqartirishi, iste’molchilar talabi pasayishi, ishsizlik ortib borishi kuzatiladi, bu esa mamlakatning umumiy iqtisodiy iqlimiga salbiy ta’sir ko‘rsatadi.
🏭 Retsessiya iste’mol xarajatlarining pasayishi, kreditshartlarining yomonlashishi, tashqiiqtisodiy zarbalar yoki investitsiyalarning keskin kamayishi kabi turli omillar tufayli yuzaga kelishi mumkin.
📊 During this time, companies reduce spending, consumer demandfalls, and unemploymentrises, negativelyaffecting the country’s overall economic climate.
⬇️ A recession can be triggered by various factors, such as lower consumer spending, worsening creditconditions, externaleconomic shocks, or a sharp drop in investment.
#GraduateSchool#Recession#Decrease#Economy
🔝Web-site |🔝Facebook | 🔝Instagram | 🔝Youtube
#common_mistakes
#decrease
#in#of
@fluencyinenglish
معمولاً از عبارت زیر برای کاهش در چیزی صحبت می کنیم.
✔️ decrease in sth
با این حال،معمولاً از عبارت زیر برای کاهش مقدار بکار می بریم.
✔️ decrease of sth
مثال:
• There has been a 2% decrease in the rate of unemployment.
2 درصد کاهش در نرخ بیکاری وجود داشته است.
• There has been a decrease of 2%.
2 درصد کاهش وجود داشته است.
• There was a slight decrease in his weight after a week of dieting.
بعد از یک هفته رژیم، یک کاهش کوچک در وزنش وجود داشت.
• Any decrease in tourism could have a serious effect on the local economy.
هر گونه کاهشی در گردشگری میتوانست اثری جدی بر اقتصاد محلی بگذارد.
• The report's finding on the decrease in violent crime supports the police chief's claims.
• We have seen a marked decrease in the number of accidents since these safety measures were introduced.
از وقتی این تدابیر امنیتی ارائه شدند، کاهش شدیدی در تعداد تصادفات مشاهده شده است.
• We've noticed a steady decrease in jobs available for new graduates in the industry.
@fluencyinenglish
#common_mistakes
#decrease
#in#of
@fluencyinenglish
معمولاً از عبارت زیر برای کاهش در چیزی صحبت می کنیم.
✔️ decrease in sth
با این حال،معمولاً از عبارت زیر برای کاهش مقدار بکار می بریم.
✔️ decrease of sth
مثال:
• There has been a 2% decrease in the rate of unemployment.
2 درصد کاهش در نرخ بیکاری وجود داشته است.
• There has been a decrease of 2%.
2 درصد کاهش وجود داشته است.
• There was a slight decrease in his weight after a week of dieting.
بعد از یک هفته رژیم، یک کاهش کوچک در وزنش وجود داشت.
• Any decrease in tourism could have a serious effect on the local economy.
هر گونه کاهشی در گردشگری میتوانست اثری جدی بر اقتصاد محلی بگذارد.
• The report's finding on the decrease in violent crime supports the police chief's claims.
• We have seen a marked decrease in the number of accidents since these safety measures were introduced.
از وقتی این تدابیر امنیتی ارائه شدند، کاهش شدیدی در تعداد تصادفات مشاهده شده است.
• We've noticed a steady decrease in jobs available for new graduates in the industry.
@fluencyinenglish
🚀 Bitcoin(BTC) Drops Below 72,000 USDT with a 1.23% Decrease in 24 Hours
On Apr 12, 2026, 01:42 AM(UTC). According to Binance Market Data, Bitcoin has dropped below 72,000 USDT and is now trading at 71,964.390625 USDT, with a narrowed 1.23% decrease in 24 hours.
#Bitcoin#BTC#USDT#Binance#cryptocurrency#marketdata#price drop #decrease
🚀 Bitcoin(BTC) Drops Below 71,000 USDT with a 1.14% Decrease in 24 Hours
On Apr 09, 2026, 07:21 AM(UTC). According to Binance Market Data, Bitcoin has dropped below 71,000 USDT and is now trading at 70,975.132813 USDT, with a narrowed 1.14% decrease in 24 hours.
#Bitcoin#BTC#cryptocurrency#USDT#Binance#marketdata#priceupdate#decrease#24hours
🚀 Bitcoin(BTC) Drops Below 71,000 USDT with a 2.59% Decrease in 24 Hours
On Apr 12, 2026, 13:01 PM(UTC). According to Binance Market Data, Bitcoin has dropped below 71,000 USDT and is now trading at 70,972.90625 USDT, with a narrowed 2.59% decrease in 24 hours.
#Bitcoin#BTC#USDT#cryptocurrency#marketupdate#Binance#pricechange#decrease#24hour