打印时如何跳过不在di中的值

2024-05-16 02:31:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我有个口述

x={'a':[1,'inr','in-gaap'],'b':[2,'','in-gaap'],'c':[3,'inr','']}

我是这样印刷的:

for key,values in x.iteritems():
    print 'value:{0}ref:{1}pre:{2}'.format(x[key][0],x[key][1],x[key][2])

正在打印

value:1 ref:inr pre:in-gaap
value:2 ref:    pre:in-gaap
value:3 ref:inr pre:

但我想要的是

value:1 ref:inr pre:in-gaap
value:2 pre:in-gaap
value:3 ref:inr 

对于不存在的值,不应打印这些值。 我该怎么做?你知道吗


Tags: keyinrefformatforvalueprevalues
1条回答
网友
1楼 · 发布于 2024-05-16 02:31:08
NAMES = 'value ref pre'.split()
for key, values in x.iteritems():
    valstrs = ['%s:%s' % (name, value)
               for name, value in zip(NAMES, values)
               if value]
    print ' '.join(valstrs)

相关问题 更多 >