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

Резултати

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

Пребарај: #level

当前筛选 #level清除筛选
Swift Academy

@swift_academy · Post #278 · 27.02.2026 г., 09:19

𝙱𝚎𝚐𝚒𝚗𝚗𝚎𝚛 > 𝙹𝚞𝚗𝚒𝚘𝚛 > 𝙼𝚒𝚍𝚍𝚕𝚎 > 𝙼𝚒𝚍𝚍𝚕𝚎+ > 𝚂𝚎𝚗𝚒𝚘𝚛 Har birimiz shu yo‘ldan o‘tganmiz, o'tmoqdamiz va yoki boshlaganmiz... Beginner: Eng ko'p kod yozadi. Xatolarni tushunishga harakat qiladi 'SI hamma narsa qiloladi' degan moodga tushib qolish ehtimoli katta 😄 Junior: Kodni ishlaydigan qilishni biladi. Logic yaxshilanadi Xatolardan yo o'sadi yoki tark etadi 😉 Lekin hali “clean code” refleks darajasida emas Middle: Ixcham va o‘qilishi oson kod yozadi Refactor qilishdan qo‘rqmaydi Bu yerda tafakkur o‘zgaradi: “Qanday ishlaydi?”dan > “Qanday yaxshiroq ishlaydi?”ga o‘ta boshlaydi. Middle - Doim o'rtada qolib ketish ehtimoli bor 🥱 Middle+: Qisqa kod yozish va Patternlarni ko‘rib boshlaydi “Buni umumlashtirish mumkin” deydi, ammo har doim ham emas 😉 Kod yozishdan ko'ta tizim ko‘rishni boshlaydi Bir funksiya emas, butun modul haqida o‘ylaydi Senior: Hozirgi vazifani emas, kelajakni ko‘radi Kod yozmaydi - arxitektura o‘ylaydi “Bugun ishlaydi” emas, “2 yildan keyin ham ishlaydi” deb yozadi Va eng qizig‘i: Senior eng kam kod yozadi 😄 Lekin eng ko‘p fikrlaydi. Xulosa: Beginner xatoni ko‘rmaydi Junior xatoni sezadi Middle xatoni tuzatadi Middle+ umumlashtiradi Senior kelajakdagi xatolarni oldini oladi MUHIM: Beginner, Junior va hatto Middle darajasida ham kodni avvalo o'zingiz yozing, SI esa faqat muhokama qilish & tushuntirish & o'rganish va tez izlanish uchun toki muammoni Proyekt darajasida ko'ra olish va yechimni tizimli shakllantira olish saviyasiga yetmaguncha. Batafsil: https://lnkd.in/dTyhYbpW Siz o‘zingizni qaysi bosqichda ko‘ryapsiz? #ios#swift#level#junior#middle#senior Mukhriddinbek Samidov 🔗YouTube | Instagram | LinkedIn | Telegram | Medium