Небольшой трик с регулярными выражениями который редко вижу в чужом коде.
Допустим, вам нужно распарсить простой текст и вытащить оттуда пары имя+телефон. Вернуть всё это надо в виде списка словарей. Возьмем очень простой пример текста.
>>> 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
Вместе - хоть в космос !
Сегодня у нас митап.
Это всегда особенный день.
Мы очень готовимся и стараемся.
И хочется не просто повторить успех предыдущих встреч, а сделать ещё больше — в содержании, в атмосфере, в настоящем обмене энергией.
В этот раз мы выбрали нашу любимую тему — команды.
Будем вместе размышлять: каким должен быть идеальный лидер сегодня?
И познакомимся с подходом, который считаем особенно актуальным — вдохновляющее лидерство.
Очень рады, что приглашение выступить перед нашим сообществом принял Сергей Кондаков, генеральный директор Tom Tailor.
Настоящий практик и вдохновляющий лидер!
А ещё — в апреле День космонавтики. А где, как не в космосе, самые сплочённые команды?
Поэтому мы получили официальное разрешение от Роскосмоса на выступление действующего космонавта Дмитрия Петелина, а
наш VI Meet Up Фактор Лидера назвали:
“Вместе — хоть в космос! От команды звезд к звездной команде”.
Сегодня вечером мы ждём наших гостей.
Мест уже нет — SOLD OUT!
Если вам интересно принимать участие в наших митапах в будущем — ставьте + в комментариях или пишите в личку.
Будем рады расширять наше пространство доверия и развития.
#MeetUp
Просвирякова: Дневник Развития Бизнеса
В преддверии нашего 7-го #MeetUp в апреле хочется использовать по максимуму каждый день и заполнять свое окружение интересными и коммуникативными людьми 👥
Наверняка вы уже заметили, что моя главная ценность в людях, поэтому я отдаю много внимания своим коллегам, клиентам, качеству нашего общения.
И для вас стараюсь предлагать только проверенные контакты ✔️
В этот раз делюсь с вами полезными каналамина темы маркетинга, финансов, здоровья и психологии и т.д. Все, чем интересуюсь я сама!
Только проверенные авторы и польза здесь https://t.me/addlist/3rl5nspZWRU1YmQy📍