Как напечатать все идентификаторы в list python

#python-3.x

#python-3.x

Вопрос:

я хочу получить подробную информацию о id в payload

 payload = [
    {
    'id': 'Room1', 
            'temperature': 
                {
                  'value': '10', 
                  'type': 'Number'
                }, 
            'pressure':
        {
            'value': '12', 
            'type': 'Number'
            
        }, 
            'type': 'Room', 
            'time_index': '2020-08-19T11:36:47.370234'
    },
    {
   'id': 'Room2', 
        'temperature':
            {'value': '10', 
            'type': 'Number'
            }, 
        'pressure':
            {'value': '12', 
            'type': 'Number'
            }, 
            'type': 'Room', 
            'time_index': '2020-08-19T11:36:47.370586'
        
    }
            ]
  

Здесь я хочу получить id: Room1,Room2 поэтому я попытался,

 entity_id = payload.get('id',None) ----> getting output as Room2
print (entity_id)
  

Итак, когда я использую список с индексом в приведенном выше случае следующим образом: entity_id = payload[0].get('id',None) я получаю значение id как: Room1 и для entity_id = payload[1].get('id',None) Room2

Как я могу получить все значения payload id like id at 0 index и далее все значения id для печати…

Заранее спасибо

Комментарии:

1. Вы пробовали использовать цикл for, чтобы просмотреть каждый элемент и получить каждый идентификатор? Кроме того, payload.get('id',None) должно выдать вам ошибку; payload является списком и не имеет get

2. Нет, я еще не пробовал цикл. Новичок в python, поэтому не знаю, как использовать его точно для этого сценария.

Ответ №1:

Если это ваш ожидаемый результат,

id: Room1,Room2 ,

затем, используя понимание списка;

print("id:", ", ".join(p.get(id, None) for p in payload))