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

Резултати

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

Пребарај: #ceu

当前筛选 #ceu清除筛选

ትብብር ለኢትዮጵያ አንድነት ፓርቲ በይፋ የምርጫ ቅስቀሳውን ጀመረ *********************** በመጪው ግንቦት ወር ለሚካሄደው 7ኛው ጠቅላላ ምርጫ የሚወዳደረው ትብብር ለኢትዮጵያ አንድነት ፓርቲ ከዛሬ ጀምሮ በይፋ የምርጫ ቅስቀሳ መጀመሩን አስታውቋል። የፓርቲው ፕሬዚዳንት አቶ አብርሃም ጌጡ ፓርቲያቸው በመላ ኢትዮጵያ በሚካሄደው ምርጫ ላይ በቁርጠኝነት ለመሳተፍ ዝግጅቱን ማጠናቀቁን እና የቅስቀሳ ሥራውን መጀመሩን ገልጸዋል። ምርጫ የዴሞክራሲ ሥርዓት እንዲጎለብት እና የሕግ የበላይነት እንዲሰፍን ቁልፍ ሚና እንዳለው አጽንኦት የሰጡት ፕሬዚዳንቱ፣ ሕዝቡም በቀሩት ቀናት ውስጥ የመራጭነት ካርድ እንዲያወጣ፣ በምርጫው ሂደት በንቃት በመሳተፍ ለዴሞክራሲ መጎልበት የበኩሉን ሚና እንዲያኖር ጥሪ አቅርበዋል። ትብብር ለኢትዮጵያ አንድነት ፓርቲ የምርጫ ቅስቀሳውን በመላ ኢትዮጵያ ቤት ለቤት በመንቀሳቀስ የፓርቲውን ፖሊሲዎች እና አማራጮች ለዜጎች እንደሚያስረዳ የገለጸ ሲሆን የቅስቀሳ ሥራውን ሲያከናውን ሕዝቡ አስፈላጊውን ትብብር እና ድጋፍ እንዲያደርግለት ፓርቲው ጥሪ አቅርቧል። ትብብር ለኢትዮጵያ አንድነት ፓርቲ ኢትዮጵያ ሕዝባዊ አብዮታዊ ፓርቲ (ኢሕአፓ)፣ አማራ ግዮናዊ ንቅናቄ (አግን)፣ እናት ፓርቲ እና የመላው ኢትዮጵያ አንድነት ድርጅት (መኢአድ) በቅንጅት የፈጠሩት ፓርቲ ነው። በነፃነት ፍቅሩ #EBC#Ethiopia#CEU