Всем привет!
Допустим, у меня есть такой json:
-object {5}
-data [20]
-product [14]
- 1{17}
- 2{17}
-3{17}
-var1 :10
-var2: 20
-request {11}
- var3: 11.01.11
- var4: 12.01.11
status: 200
Если для product работает так:
for i in dataJson['product']:
print(i['var1'], i['var2'])
И возвращает нормально все уникальные нужные значения.
То для
for i in dataJson['request']:
print(i['var3'], i['var4'])
не работает.
Возвращает просто:
var3
var3
var3.
Подскажите, пожалуйста, в чем проблема? Как правильно вытаскивать данные в request?
Приведите реальный json, или хотя бы соблюдайте синтаксис json в примере, т.к. в представленном фрагменте не json. И для форматирования кода используйте кнопку </>
Выдает:
dateStart
dateEnd
...
А если добавляю
for i in dataJson['request']:
print(i['dateStart])
name 'dateStart' is not defined. Подскажите, в каком формате тогда запрос правильно делать?
tea4panda, потому что при итерации по словарю он выдает значения ключей, т.е. в цикле i будут просто строки 'dateStart', 'dateEnd'. Соответственно от них нельзя получить значения.
Для какой цели вообще нужна эта итерация в цикле, просто вытащить значение ключа?
Если да, то ключи просто пишут подряд dataJson['request']['dateStart']
если цель перебрать все ключи, то можно так
for key, value in dataJson['request'].items():
print(key, value)
o5a, Благодарю!
Прости за сложности в формулировании вопроса. Еще до конца со всем этим и не разобрался
Именно значение ключа и хотел получить :)
Спасибо большое!