在python中将元组转换为字典

时间:2016-02-19 15:28:48

标签: python dictionary tuples

我正在尝试将一行字符串转换为字典,我面临一个错误。 这就是我拥有的和我所做的:

line="nsd-1:quorum"
t=tuple(line.split(":"))
d=dict(t)
Traceback (most recent call last):
  File "<pyshell#2>", line 1, in <module>
    d=dict(t)
ValueError: dictionary update sequence element #0 has length 5; 2 is required

基本上,我想要实现的是拥有一个键值对。 因此,如果我有一组以“:”分隔的值,我希望将它作为关键字之前的任何关键字,并且在冒号之后需要为关键字的值。 例如:如果我使用上面的字符串,我想要“nsd-1”作为我的键,“quorum”作为值。

感谢任何帮助。 感谢

2 个答案:

答案 0 :(得分:4)

将其包裹在列表中:

>>> dict([t])
{'nsd-1': 'quorum'}

也没有必要将split的返回值转换为元组:

>>> dict([line.split(':')])
{'nsd-1': 'quorum'}

答案 1 :(得分:2)

t放入空列表中,如下所示:

d=dict([t])