TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #146 · 16 сеп.

Функция 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

Hashtags

Резултати

Пронајдени 1 слични објави

Пребарај: #pq15

当前筛选 #pq15清除筛选

🪖26 апреля 1942 года: история мужества в арктических водах 🪖 #OTD В этот день ровно 82 года назад, 26 апреля 1942 года, из Исландии вышел конвой PQ15 — 25 торговых судов, груженных военными поставками для СССР. Впереди их ждал один из самых опасных морских маршрутов в истории войны. За сухими цифрами статистики — более 50,000 тонн грузов, около 100 танков, 80 самолетов — стоят невероятные человеческие истории. В конвой входили экипажи разных национальностей — 🇬🇧 британские, 🇺🇸 американские и 🇵🇱 польские моряки, объединенные общей миссией. Многие корабли-эскорты были укомплектованы моряками польского флота, которые, потеряв свою родину, продолжали борьбу с нацизмом. Капитан SS Cape Corso и его команда, получив попадание торпеды, отказались покинуть судно. В ледяной воде моряки заделали пробоину и сумели довести поврежденный корабль до Мурманска. Младший лейтенант Томас Брайтуэйт, 19-летний радист эсминца, провел 48 часов без сна, поддерживая связь между судами во время непрерывных немецких атак с воздуха. «Когда волны высотой с трёхэтажный дом обрушиваются на корабль, а палуба покрывается льдом — понимаешь, что этот маршрут недаром называли „дорогой смерти”», - вспоминал позже один из капитанов миссии. Несмотря на все испытания, 23 из 25 судов конвоя достигли Мурманска. Доставленная техника, топливо и медикаменты стали жизненно важной поддержкой для советских войск накануне крупных сражений лета 1942 года. Арктические конвои — одна из самых впечатляющих страниц совместной истории союзников во Второй мировой войне, символ международного сотрудничества перед лицом общей угрозы. #АрктическиеКонвои#VE80#VEDay80#PQ15