我有一个字符串的元组,我想通过使用分隔符分割每个元素来将其转换为字典。这可能与字典理解?如何将“x = y”字符串的元组解析为python中的字典?
>>> x = ('var1=abc', 'var2=xyz', 'var3=10')
>>> y = {k: v for (k, v) in ???} # this is where I need your help
>>> print y
{ "var1": "abc", "var2": "xyz", "var3": "10" }
这既是一个学习的过程是什么 - 所以请不要做它的另一种方式回答(我有很多这样的) - 我想知道这是否是可能的字典解析。
[UPDATE]
有,我没有写下第一稍微修改 - 我需要从每个值的端部条的外来换行字符。
>>> x = ('var1=abc\n', 'var2=xyz\n', 'var3=10')
>>> d = {k: v.strip('\n') for (k, v) in [e.split('=') for e in x]}
>>> d
{'var1': 'abc', 'var3': '10', 'var2': 'xyz'}
(当然,现在不是以相同的顺序 - 但是我可以忍受哎呀。)
首先 - 这是我见过的最快的一个问题 - 我实际上在大约2分钟内完成了自己的工作,到那时我有三个答案。令人惊叹的东西 - 做得很好,但Martijn获得第一名。 – 2013-03-04 16:46:49
以此速度,Martijn将*总是*得分。 :) – 2013-03-04 16:47:55
我已经upvoted所有正确的答案,以及:-) – 2013-03-04 16:49:26