@fight4f · Post #7940 · 05.02.2024 г., 05:30
2月3日 荷蘭東南部馬城遊行 National Protest #Maastricht #馬城
Hashtags
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
Пребарај: #maastricht
@fight4f · Post #7940 · 05.02.2024 г., 05:30
2月3日 荷蘭東南部馬城遊行 National Protest #Maastricht #馬城
Hashtags
@elenabasilepublicchanel · Post #201 · 25.01.2025 г., 10:36
Il numero di morti a #Gaza sale nonostante il cessate il fuoco I palestinesi tornano alle loro macerie e scavano tra i detriti Cadaveri putrefatti, simbolo di lunghe agonie, corpi intrappolati, senza soccorsi Bombardamenti a tappeto per rendere Gaza l'inferno e cacciare un popolo colpevole di essere #Palestinese Mentre ció accade sentiamo illustri esponenti della comunità ebraica, complice una stampa venduta alla #IsraelLobby , agitare lo spauracchio dell' antisemitismo Non celebrano #giornodellamemoria con l' #Anpi le associazioni di partigiani colpevoli di ricordare che la memoria ha un significato : mai più genocidi mai più holocausto Per tutti i popoli ! Gli ebrei di oggi sono i #palestinesi #moniovadia è linciato mediaticamente per avere richiamato il diritto Onusiano : è legittima la lotta armata di un popolo sotto occupazione straniera Il Parlamento Europeo che non è un Parlamento decreta altri 5 anni di guerra a spese dell' Ucraina e dell#Europa contro la #Russia per interessi #USA Vota la censura e scatena la guerra al dissenso mascherandola per guerra alka #disinformazione Orwell aveva compreso in tempi remoti: il ministero della guerra sarà chiamato Ministero della pace Il dissenso purtroppo si framnenta: ciascun gallo gioca a fare il rivoluzionario Narcisi a cui poco importa di incidere in questo mondo alla deriva Eppure tanti cittadini consapevoli cercano un' istanza politica che li rappresenti Lotta alle guerre imperiali di #trump come della badante di #Biden Stop al #GazaGenocide #Europa politica federale socialdemocratica con investimenti nei beni comuni e libera dal neoliberismo di #Maastricht A questa società civile, alle donne e agli uomini di buona volontà dico #nonmollaremai Testimonianza e demistificazione #noinonsiamocomplici