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

TGINSIGHT SIMILAR POSTS

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

Изворен канал @pythonotes · Post #65 · 8 апр.

Небольшой трик с регулярными выражениями который редко вижу в чужом коде. Допустим, вам нужно распарсить простой текст и вытащить оттуда пары имя+телефон. Вернуть всё это надо в виде списка словарей. Возьмем очень простой пример текста. >>> text = ''' >>> Alex:8999123456 >>> Mike:+799987654 >>> Oleg:+344456789 >>> ''' Соответственно, для выделения нужных элементов будем использовать группы. Получится такой паттерн: (\w+):([\d+]+) Как мы будем формировать словарь из найденных групп? >>> import re >>> results = [] >>> for match in re.finditer(r"(\w+):([\d+]+)", text): >>> results.append({ >>> "name": match.group(1), >>> "phone": match.group(2) >>> }) >>> print(results) [{'name': 'Alex', 'phone': '8999123456'}, ...] Можно немного сократить запись используя zip >>> results = [] >>> for match in re.finditer(r"(\w+):([\d+]+)", text): >>> results.append(dict(zip(['name', 'phone'], match.groups()))) Но есть способ лучше! Это именованные группы в regex. Можно в паттерне указать имя группы и результат сразу забрать в виде словаря. >>> for match in re.finditer(r"(?P<name>\w+):(?P<phone>[\d+]+)", text): >>> results.append(match.groupdict()) То есть всё что я сделал, это добавил в начале группы (внутри сбокочек) такую запись: (?P<group-name>...) Теперь найденная группа имеет имя и можно обратиться к ней как к элементу списка >>> name = match['name'] Либо забрать сразу весь словарь методом groupdict() >>> match.groupdict() #tricks#regex

Резултати

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

Пребарај: #choosereusables

当前筛选 #choosereusables清除筛选
NEA Singapore

@NEASingapore · Post #970 · 31.12.2024 г., 02:15

🌍 2025 Resolution: Main Character Energy for the Planet 🌱 Tiny moves today = Major flex for tomorrow's planet 💪🌍 Every sustainable choice we make helps protect our planet for future generations. #ChooseReusables#RecycleRight#SayYEStoWasteLess#TowardsZeroWaste

NEA Singapore

@NEASingapore · Post #559 · 05.06.2023 г., 03:20

This World Environment Day, let’s do our part to #BeatPlasticPollution together. Simply bring along reusable bags and containers wherever you go to reduce your reliance on disposables. Let’s #ChooseReusables and work #TowardsZeroWaste together! Check out some tips here: https://www.youtube.com/playlist?list=PLPX9rYUbMZF2Ofk62WvXxsv0vXR6Sh6CU

@Veronica_ecovibes

@veronica_ecovibes · Post #36 · 03.05.2022 г., 09:57

⠀⠀ Уровень развития человечества: Природа создаёт свою природную оболочку, а человек делает искусственную… #WTF😨 Я не понимаю?! Мы настолько ленивые, что не можем почистить и порезать апельсины сами … ⠀ К размышлению: Недавно, учёные пришли к выводу , что каждые полминуты от пластиковых отходов умирает одно животное… No comments… #безпластика#нетпластику #plasticfree#zerowastehome#zerowaste#plasticfree#plasticfreeoceans#plasticpollution#plasticwaste#plasticfreeliving#wasteless#reduceplastic#noexuceforsingleuse#choosereusables#zeroplastic#nomoreplastic#plasticpollutes#zerowasteliving#zerowastelife#lowwaste#reducewaste#savetheworld#bringawareness#saveourplanet#earthpix#sayNOtoplastic

@Veronica_ecovibes

@veronica_ecovibes · Post #19 · 19.04.2022 г., 12:57

#гринпис#черныйюмор#greenpeace#пластик#freefromplastic#zerowastehome#plasticfree#plasticpollution#plasticwaste#plasticfreeliving#wasteless#reduceplastic#noexuceforsingleuse#choosereusables#zeroplastic#nomoreplastic#plasticpollutes#zerowasteliving#zerowastelife#lowwaste#reducewaste#savetheworld#bringawareness#earthpix#sayNOtoplastic#wildaware#plastickills#microplastics#нольотходов