python-3.x - 多行正则表达式 python,转换为 dict
问题描述
我有一些看起来像这样的命令输出。
make: Toyota
model: Camry
year: 2020
我想将其转换为如下所示的字典:{'make': 'Toyota', 'model': 'Camry', 'year': '2020'}
我可以一次转换一行,使用类似的逻辑make:\s*(?P<make>\w+{3-10})
和类似的model
and year
,但是我如何想出一个单一的正则表达式,我需要用那个正则表达式来提取我需要的信息吗?
解决方案
一种使用方式yaml
:
import yaml
new_str = """make: Toyota
model: Camry
year: 2020"""
yaml.safe_load(new_str)
输出:
{'make': 'Toyota', 'model': 'Camry', 'year': 2020}
推荐阅读
- python - Tk.Frame 被安排在另一个内部而不是在它之下
- sql - 仅选择属性更改的行
- c++ - 通过函数返回值传递实际参数只有一个或两个副本临时变量?
- xml - 如何使用 Muenchian 分组 XSLT 1.0 在每个目录中按标题分组
- c# - 只有最后一个 or 运算符与 and 运算符一起工作吗?
- blockchain - 是否可以在没有源代码的情况下获得合约的 ABI?
- dpdk - 运行 dpdk testpmd 时显示“链接状态:关闭”
- bootstrap-4 - Bootstrap 安装弄乱了我在 SCSS 中的菜单
- python - 在 python 上画线的问题
- r - 将向量传递给 httr2 req_headers()