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

Резултати

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

Пребарај: #sholz

当前筛选 #sholz清除筛选
Elena Basile Public Channel

@elenabasilepublicchanel · Post #180 · 05.12.2024 г., 09:10

L' impero vacilla Muoia Sansone con tutti i filistei La guerra per procura Usa contro la #Russia in #Ucraina fino all' ultimo diciottenne si sta inceppando La Russia ha saputo difendersi dalle sanzioni e avanza lentamente sul campo di battaglia per risparmiare uomini. Si moltiplicano allora nuovi fronti. In #Siria i tagliagole jihadisti, già cari alla Clinton e Obama, sono riesumati per fomentare nuovamente la guerra civile e destabilizzare uno Stato Sovrano. La Turchia è complice per i suoi interessi ostili ai curdi. Israele è presente. Erodere il potere di #Assad e limitare gli aiuti iraniani agli #Hezbollah sono obiettivi non trascurabili. Il principale comunque resta quello degli #USA: erodere il potere di #Mosca attaccata su due fronti siriano e ucraino La Guerra in Ucraina ha tuttavia già raggiunto i suoi scopi importanti L Europa continentale, l Europa tedesca è morta. L agonia di #Sholz e di #Macron ne è il segnale evidente. L' Europa scandinava e polacca si prepara alla guerra contro la #russia L' energia USA viene venduta a prezzi stellari In Georgia il PM di #sognogeorgiano considerato filorusso ottiene il 52% dei voti. Le elezioni sono considerate truccate ma nessuno ha uno straccio di prova. Il colpo di piazza #Maidan si recita anche in #Georgia. La presidente con passaporto francese afferma di non voler lasciare le sue funzioni alla scadenza del mandato. La pax americana mostra il suo volto in #coreadelsud dove per poche ore viene dichiarata la legge marziale per proteggere "la democrazia" Intanto sfilano davanti ai nostri occhi i bimbi mutilati di #Gaza. Altri sono assassinati mentre sono in fila per il pane, nei campi profughi sono bruciati vivi dall' " unica democrazia del Medio Oriente" I media celebrano i loro rituali nei circhi abituali dove le poche voci del dissenso ammesse a corte raccolgono briciole Le librerie grondano soap opere pompate dalla politica. Orge di libri illegibili dai #Blair ai " Grazie Occidente" Il festival del libro di Roma confonde stupri e letteratura #chiaravalerio seleziona i libri " conformi" Noi naufraghi impotenti sempre più soli affoghiamo nell' irrilevanza