【发布时间】:2018-07-25 21:43:10
【问题描述】:
寻找一种优雅的方式将子字符串列表和它们之间的文本转换为字典中的键值对。示例:
s = 'k1:some text k2:more text k3:and still more'
key_list = ['k1','k2','k3']
(missing code)
# s_dict = {'k1':'some text', 'k2':'more text', 'k3':'and still more'}
这可以使用str.find() 等解决,但我知道有比我一起破解的更好的解决方案。
【问题讨论】:
-
那么,关键是不是没有空格的单词?
-
@cᴏʟᴅsᴘᴇᴇᴅ 认为它们是从列表中知道的(没有
:) - 我已经编辑了代码。 -
嗯,要弄清楚一个值在哪里结束而下一个键以代码开头并不容易。
-
s = 'k1:some text k2:I was on the k1 once k3:and still more'? -
@PatrickArtner 想解析为
{... k2:'I was on the k1 once' ...}。如果:是保留语法,则仍然定义良好。
标签: python string dictionary