2016-02-19 35 views
3

我试图将一行字符串转换为字典,我正面临一个错误。 这里就是我和我所做的:将元组转换为python中的字典

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”作为我的关键和“法定人数”作为价值。

任何帮助表示赞赏。 感谢

回答

3

把它包在一个列表:

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

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

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

t空列表里面,像这样:

d=dict([t]) 
+0

谢谢你们。这有帮助。 – cool77