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 слични објави

Пребарај: #fergusonmarine

当前筛选 #fergusonmarine清除筛选

🚢Шотландия поручит Ferguson Marine строительство четырёх новых паромных судов. Правительство Шотландии планирует передать верфи Ferguson Marineчетыре новых контракта на строительство судов в рамках программы поддержки национального судостроения. Предложения включают строительство замены исследовательского судна “Scotia”, судна рыбного надзора “Minna”, а также двух паромов в рамках второй фазы программы обновления флота. Проекты должны обеспечить загрузку верфи в Порт-Глазго на ближайшие пять лет и поддержать модернизацию предприятия. Контракты предоставляются при условии проведения дополнительной проверки экономической целесообразности. Власти отмечают, что заказы соответствуют текущим возможностям верфи и должны укрепить позиции шотландского судостроения. Ранее Ferguson Marine подвергалась критике из-за серьёзных задержек в строительстве гибридных паромов для Caledonian Maritime Assets. Судно “Glen Sannox” было передано оператору CalMac Ferries лишь в конце 2024 года вместо запланированного 2018-го, а его систершип “Glen Rosa” ожидается не ранее IV-го квартала 2026 года. Для отрасли решение демонстрирует тенденцию к поддержке национальных верфей государственными заказами, особенно в сегменте специализированных и пассажирских судов. 📌Ferguson Marine (Port Glasgow) Ltd. — шотландская судостроительная компания, основанная в 1903 году, специализируется на строительстве паромов и специализированных судов. Верфь находится под контролем правительства Шотландии после национализации в 2019 г. #Shipbuilding#FergusonMarine#Ferries#Scotland#MaritimeIndustry