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

Пребарај: #vhfs

当前筛选 #vhfs清除筛选

Viral Haemorrhagic Fevers #VHFs are a group of illnesses caused by viruses that damage blood vessels and can cause severe bleeding. Our national guideline on #InfectionPreventionandControl for #VHFs is designed as a major reference for anyone involved in the care and management of #VHFs cases. 🔗Download and read via https://ncdc.gov.ng/themes/common/docs/protocols/111_1579986179.pdf

Viral Haemorrhagic Fevers #VHFs are a group of illnesses caused by viruses that damage blood vessels and can cause severe bleeding. Our national guideline on #InfectionPreventionandControl for #VHFs is designed as a major reference for anyone involved in the care and management of #VHFs cases. 🔗Download and read via https://ncdc.gov.ng/themes/common/docs/protocols/111_1579986179.pdf

Viral Haemorrhagic Fevers such as #LassaFever spread mainly from person to person through direct & indirect contact. When properly done, #HandHygiene is very important to reduce the risk of healthcare workers' infection. Our #IPC guidelines for #VHFs⬇️ https://ncdc.gov.ng/themes/common/docs/protocols/111_1579986179.pdf

Viral hemorrhagic fevers #VHFs such as #LassaFever affect multiple organ systems in the body and may be accompanied by bleeding. Download and share our National Guideline on #IPC for #VHF for measures required in the management of VHFs 🔗 https://ncdc.gov.ng/themes/common/docs/protocols/111_1579986179.pdf

Viral hemorrhagic fevers #VHFs are a group of infectious diseases that affect multiple organ systems in the body and may be accompanied by bleeding. What are the #InfectionPreventionandControl practices that need to be in place in the management of VHFs? 🔗Download our National Guideline on #IPC for #VHF https://ncdc.gov.ng/themes/common/docs/protocols/111_1579986179.pdf

Common Viral Haemorrhagic Fevers #VHFs include #LassaFever, #EbolaVirusDisease, #YellowFever, #DengueFever, #MarburgFever and #CrimeanCongoHaemorrhagicFever. What are the #InfectionPreventionandControl practices that need to be in place in the management of VHFs? 🔗Download our National Guideline on #IPC for #VHF https://ncdc.gov.ng/themes/common/docs/protocols/111_1579986179.pdf