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

Пребарај: #iamplc

当前筛选 #iamplc清除筛选

Стриминги прошли мимо меня. У меня нет ни одной подписки, чтобы слушать через нее музыку. Как партизан использую на андроиде Kate Mobile и гружу музыку в кэш. Файлами кидаю ее в mp3-плеер и бегаю в проводных наушниках по ночному городу. Почти айти-дед, но не Масалович. В конце года принято итоги подводить. За многих это делает Яндекс. За меня это сделал PLC. В том смысле, что выпустил трек года. Он про культуру. Нашу. Моя культура своими корнями в могилах убитых поэтов, Моя культура не смотрит на цены, моя культура — Победа.  У нас рынок, в том числе музыкальный. С новым треком ты в лучшем случае герой на день, поэтому принято писать про тренды. Написать песню, которая объединит миллионы, стянет смысл поколений как цемент — это не просто труд, это искра вдохновения. И PLC пишет честно, что его и наша культура — культура тысячелетней борьбы. Вы назовёте это милитаристским кутежом, а мы всего лишь вкладом в мировую историю. Она потом объяснит всему миру, чей был первый выстрел, Но перед этим их ресторан по пути превратит в "Бистро" И мы ведь часто говорим про то, что судьба несправедлива, раздается либеральный вой на болотах, но ведь так уже примерно тысячу лет. Нас осуждает весь мир, ну и что? И в этом вся суть: здесь что ни судьба, то судьбина, Но моя культура будет судить за это даже со скамьи подсудимых. Самое важное, что ведь это попытка ответить на важные вопросы: "Кто мы такие?" и "Почему мы такие?". И это голос поколения. PLC не претендует на это, он это делает. До этого он говорил за поколение в 2017 в треке "Восход": "Мы родились на осколках империи, Бог знает кому на поруку" Кстати, "Культура" вышла в версии с The Hatters. И ее точно надо послушать, хотя мне они не заходят, но тут в тему. И главный ответ, почему мы живы тоже здесь: Но все когда-то всегда умирают, а моя культура останется. Ну и да, если "Культура" не звучит на новогодней песне года, то кому вообще нужна эта песня года? #плейлист#поколение#культура#plc#рэп#thehatters#iamplc#музыка#внк Вопросик на контроле