mtm*_*tmt 12 python regex dictionary
从字符串构建字典的最佳方法是什么,如下所示:
"{key1 value1} {key2 value2} {key3 {value with spaces}}"
Run Code Online (Sandbox Code Playgroud)
所以键总是一个没有空格的字符串,但值是字符串或大括号中的字符串(它有空格)?
你怎么会把它变成:
{'key1': 'value1', 'key2': 'value2', 'key3': 'value with spaces'}
Run Code Online (Sandbox Code Playgroud)
vks*_*vks 18
import re
x="{key1 value1} {key2 value2} {key3 {value with spaces}}"
print dict(re.findall(r"\{(\S+)\s+\{*(.*?)\}+",x))
Run Code Online (Sandbox Code Playgroud)
你可以试试这个.
输出:
{'key3': 'value with spaces', 'key2': 'value2', 'key1': 'value1'}
Run Code Online (Sandbox Code Playgroud)
在这里re.findall
我们提取key
和它value
.re.findall
返回一个包含所有键值dict
对的元组的列表.使用元组列表提供最终答案.在这里阅读更多.
归档时间: |
|
查看次数: |
1631 次 |
最近记录: |