2012-03-07 35 views
0

x={'a':'1','b':'2','c;0':'a1;b1;b2;b3;b4','c;1':'a2;b2;b3;b4;b5;b6'}类型的字典如何基于分隔符

我很喜欢这个

for key,values in x.iteritems(): 
    if key.split(";") is True: 
     print key,value 
    else: 
     print key,value 

其工作不正常写程序区分字典项和值。

输出

什么,我想在

if key.split(";") is False 
    print key,values 

输出的执行应该是

a 1 
b 2 

在输出什么,我想在

if key.split(";") is True 
    print key,values 

输出的执行应该是

c;0 a1;b1;b2;b3;b4, 
c;1 a2;b2;b3;b4;b5;b6 

回答

3

我觉得你真的不需要任何if/else条件,因为你打印键/值对两种情况:

>>> for k, v in x.iteritems(): 
...  print k, v 
a 1 
b 2 
c;1 a2;b2;b3;b4;b5;b6 
c;0 a1;b1;b2;b3;b4 

在您提供的输出看,我看到的唯一区别是,你的例子是有序的。如果这就是你要找的话,你可以使用sorted这样的:

>>> for k, v in sorted(x.iteritems()): 
...  print k, v 
a 1 
b 2 
c;0 a1;b1;b2;b3;b4 
c;1 a2;b2;b3;b4;b5;b6 

我希望这有助于。

相关问题