Небольшой трик с регулярными выражениями который редко вижу в чужом коде.
Допустим, вам нужно распарсить простой текст и вытащить оттуда пары имя+телефон. Вернуть всё это надо в виде списка словарей. Возьмем очень простой пример текста.
>>> 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
OLTRE IL DOGMA: COSA CI INSEGNA DAVVERO IL RAPPORTO DEL PCC SULLA CRISI GLOBALE
il Rapporto annuale 2022/2023*dell’Accademia del Marxism (Cina) di Bruno Steri per Marx21.
Un testo che sfata molti stereotipi.
1. Il marxismo non è una litania.
Contro la vulgata che dipinge i comunisti cinesi come "dogmatici", il Rapporto parte da una lezione di Engels: “La concezione di Marx non è una dottrina, ma un metodo”. Nessuna "frase scarlatta" astratta, ma l’analisi concreta di una realtà complessa. Con oltre 100 milioni di iscritti al PCC e un PIL da 121 trilioni di yuan, la "quantità" diventa qualità: la Cina non esporta modelli, propone percorsi.
2. Il parassitismo finanziario USA.
Quando la Fed alza i tassi, non cura l’inflazione: esporta crisi. Il dollaro forte strangola il Sud del mondo, deprezza euro, yen e rupie, e spinge il 60% dei Paesi a basso reddito nel baratro del debito. Lenin parlerebbe di "Stato usuraio". Oggi 80 banche centrali si rivolgono allo yuan per sopravvivere. La dedollarizzazione non è un vezzo: è una trincea.
3. Europa: disuguaglianza e rassegnazione.
I dati Ocse parlano chiaro: in Italia il 10% più ricco possiede il 47% della ricchezza, mentre la metà più povera precipita al 10%. Scioperi ovunque – portuali, trasporti, sanità – eppure, nota il Rapporto, nessuna critica organica al capitalismo. Perché? Perché i partiti comunisti europei, dopo il crollo sovietico, hanno "diluito il colore dell’avanguardia". Le lotte restano economiche, non diventano politiche.
4. Una bussola per ripartire.
Il Rapporto non è un semplice resoconto: è un atto d’accusa contro l’accerchiamento imperialista (USA, Giappone, UE) e un richiamo alla responsabilità teorica. Se le proteste restano "senza guida", è il marxismo stesso a uscirne impoverito.
Leggere queste pagine significa riarmare lo sguardo. Perché senza analisi della realtà, non c’è trasformazione.
✊#Cina#Marxismo#ImperialismoFinanziario#Dedollarizzazione#LottaDiClasse#RapportoPCC
https://www.marx21.it/associazione/presentazione-del-rapporto-annuale-2022-2023-del-pcc/