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

Резултати

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

Пребарај: #ninjiatag

当前筛选 #ninjiatag清除筛选
VPS自留地

@zx_vps · Post #1967 · 24.09.2025 г., 15:02

#NinjiaTag#AirTag替代#FindMy NinjiaTag-backend:自建“AirTag”定位追踪系统 这是一个基于 Apple Find My 网络的开源后端项目,允许用户自建类似 AirTag 的追踪系统。 核心功能包括: • 通过 Apple ID 定期拉取设备位置数据,并保存到本地数据库,不受官方 7 天限制。 • 提供查询接口,可获取历史轨迹、最新定位,并支持 GPX 导出与热力图展示。 • 前端基于 Vue3 + Mapbox-GL,可直观显示位置信息。 • 支持自制蓝牙标签(nRF5x、ST17H66 等)接入 Find My 网络。 项目需在 Linux 服务器上部署,使用 Python、Node.js、Docker 等组件,并依赖 Apple ID 认证。 🔘@TossLab🔘@TossLabChannel

折腾实验室频道

@TossLabChannel · Post #788 · 24.09.2025 г., 11:14

#NinjiaTag#AirTag替代#FindMy NinjiaTag-backend:自建“AirTag”定位追踪系统 这是一个基于 Apple Find My 网络的开源后端项目,允许用户自建类似 AirTag 的追踪系统。 核心功能包括: • 通过 Apple ID 定期拉取设备位置数据,并保存到本地数据库,不受官方 7 天限制。 • 提供查询接口,可获取历史轨迹、最新定位,并支持 GPX 导出与热力图展示。 • 前端基于 Vue3 + Mapbox-GL,可直观显示位置信息。 • 支持自制蓝牙标签(nRF5x、ST17H66 等)接入 Find My 网络。 项目需在 Linux 服务器上部署,使用 Python、Node.js、Docker 等组件,并依赖 Apple ID 认证。 🔘@TossLab🔘@TossLabChannel