从json中选择与python中的值不相等的值

时间:2019-02-18 16:20:02

标签: python json list

我有以下代码

Sun

我想选择所有没有值$ 0的值并打印出来,就像这样

/CATALOG/PLANT[LIGHT='Sun']/COMMON

我该怎么做?

3 个答案:

答案 0 :(得分:0)

for d in x:
    if d['payment']=='$0':
        continue
    print(d)

如果在打印之前需要它们在列表中,则只需事先创建一个列表并将其附加到字典中即可,而不是直接将其打印出来

答案 1 :(得分:0)

您可以使用列表理解:

x_filtered = [i for i in x if i['payment'] != '$0']

您可以使用功能性方法:

x_filtered = list(filter(lambda i: i['payment'] != '$0', x))

或者是流行的for循环:

x_filtered = []
for i in x:
    if i['payment'] != '$0':
        x_filtered.append(i)

答案 2 :(得分:0)

您可以只使用简单的列表理解

>>> x
[{'name': 'a', 'payment': '$10'}, {'name': 'b', 'payment': '$15'}, {'name': 'c', 'payment': '$0'}]
>>> [y for y in x if y['payment'] != '$0']
[{'name': 'a', 'payment': '$10'}, {'name': 'b', 'payment': '$15'}]