python-如果有可用性,则将其打印出来,否则不要将其打印出来

时间:2018-08-28 09:55:14

标签: python json for-loop

所以我在玩json有点困难,我一直陷入代码打印的困境中 *ngFor="let item of posts?.data | paginate: { itemsPerPage: 10, currentPage: page, totalItems: posts?.count }"

这给我一个值:

items['ids']

我一直在试图弄清是否应该是一个包含此问题的for循环。但是我什么都没来,我在这里。现在我被困住了,想知道如何在可使用性“ IsThere”的位置打印出ID,否则就跳过它?

编辑:

[
  {
    'id': '11891',
    'availability': 'IsNotThere',
  },
  {
    'id': '11892',
    'availability': 'IsThere',
  },
  {
    'id': '11893',
    'availability': 'IsThere',
  },
  {
    'id': '11894',
    'availability': 'IsNotThere',
  },
  {
    'id': '11895',
    'availability': 'IsNotThere',
  },
  {
    'id': '11896',
    'availability': 'IsNotThere',
  },
  {
    'id': '11897',
    'availability': 'IsNotThere',
  },
  {
    'id': '11898',
    'availability': 'IsNotThere',
  },
  {
    'id': '11899',
    'availability': 'IsNotThere',
  },
  {
    'id': '11900',
    'availability': 'IsNotThere',
  }
]

2 个答案:

答案 0 :(得分:1)

如果您只关心id,则可以按其名称id进行获取。你可以这样:

id_list = [i for i in sample if i.get("availability") == 'IsThere']

要打印出来,只需简单地循环并打印。

for i in id_list:
    print(i)

答案 1 :(得分:1)

如果您有JSON对象,则可以将其循环并使用字段名称作为索引来检查字段:

for line in json:
    if(line['availability'] == "IsThere"):
       # if available -> print the id
       print(line['id'))