如何跳过di中的空白值

2024-04-29 04:52:51 发布

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

我有一句话:

x = {'a': {'p': 'in-gaap', 'r': 'inr', 'dec': 0},
     'b': {'p': 'in-ca', 'r': 'inr', 'dec': 0},
     'c': {'p': 'in-gaap', 'r': '', 'dec': ''},
     'd': {'p': 'in-gaap', 'r': 'inr', 'dec': 0}}

我使用此代码跳过空白值:

^{pr2}$

但结果是:

a,in-gaap
b,in-ca
c-in-gaap
d-in-gaap

它没有正确执行条件,它正在打印所有值

我也试着用这个代码

for k,v in x.iteritems():
    obj = re.match('\w+', x[k]['p'])
    obj1 = re.match('\w+', x[k]['q'])
    if not obj1 and obj2:
        print k, x[k]['p']
    else:                
        print x[k]['p'], x[k]['r'], x[k]['dec']

但产量和上面一样。在

<>实际上,DICT的空白值包含^ {CD1>}、^ {CD2>}等,还有一些非ASCII字符,所以我尝试使用^ {CD3>},但是它没有正确执行。在


Tags: 代码inreformatch条件空白dec
2条回答

不确定这是否是您想要的:

for k,v in x.iteritems():
    if not v['r'] and not v['dec']:
        print k,v['p']
    else:
        print v['p'],v['r'],v['dec']

输出:

^{pr2}$

在您的第一段代码中,您引用了一个名为d的dict,我们不知道它是什么。如果我将您的dict重命名为d而不是x,则得到以下输出:

>>> ## working on region in file /usr/tmp/python-30572oWE...
in-gaap inr 0
c in-gaap
in-ca inr 0
in-gaap inr 0

这似乎就是你要找的。在

相关问题 更多 >