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

Пребарај: #modernite

当前筛选 #modernite清除筛选
Turchia e dintorni

@notizieturchia · Post #3227 · 11.04.2025 г., 15:17

#AbdullahOcalan, il leader del Partito dei Lavoratori del #Kurdistan, #PKK, incontra suo nipote parlamentare d'opposizione #OmerOcalan. Sul giornale Yeni Yasam sono state pubblicate le sue dichiarazioni importanti: "Se le condizioni saranno adatte posso coordinare l'assemblea straordinaria del PKK. Le misure di sicurezza su quest'assemblea devono essere prese in modo autonomo da ogni singolo attore. Io non posso garantire per nessuno" "Il massacro contro gli aleviti in #Siria ricorda i tempi dell'#ISIS. I #druzi, gli #aleviti e i #curdi devono avere lo stesso sistema e muoversi in coordinamento e devono proteggersi a vicenda" "Sarebbe necessario ricevere anche le visite dei giornalisti come #HasanCemal e #CengizÇandar. Ancora qui in carcere non ho le condizioni adatte per lavorare su un nuovo percorso". "Noi stiamo lavorando per costruire una Repubblica democratica. Se ci riusciremo a realizzare i problemi come l'arresto del sindaco di #Istanbul non ci saranno più". "Le condizioni del #MedioOriente sono note. Bisogna essere cauti e lavorare in modo sodo contemporaneamente. L'obiettivo è quello di costruire le basi di una cultura democratica e consolidare la pace". "Seguo l'attualità attraverso alcuni canali televisivi d'opposizione e leggo le riviste #Modernite e #Jineloji".