У меня проблема с этим. Мне нужно получить 2 элемента в JSON Items: "some_number" и "some_number_2" Элементы "sample1" и "sample2" в каждом запросе разные. Я новый человек в Python. Большое спасибо
"data":{
"sample1":{
"some_number":"8410000110275080",
"some_number_2":"0070050001010011",
"name":"0000405533003537",
},
"sample2":{
"some_number":"8410000110275080",
"some_number_2":"0070050001010011",
"name":"0000405533003537",
}
В моем коде я просто могу заработать «sample1» и «sample2». В следующем запросе эти значения различны.
Вы можете использовать модуль bultin json. data = json.load(fd); [(d['some_number'], d['some_number_2']) for _,d in data['data'].items()] ? Не используйте один лайнер, хотя :)
Как вы пытаетесь сохранить свои значения для some_number и some_number_2?






Вам нужно загрузить Json в словарь:
with open("your file path", 'r') as f:
data = json.load(f)
Затем, если вы хотите перебрать как ключи, так и значения словаря, сделайте следующее:
for key, value in data.items():
print key, value
Затем вы можете вложить цикл for, чтобы получить желаемые пары key, value.
Лучший
Что ж, здесь есть на что обратить внимание. Ваш код НЕ будет работать с данными JSON, размещенными выше. Во-вторых, если мы считаем, что входные данные в правильном формате, то уверены ли вы, что этот ответ не является обманом?
В опубликованном выше Json есть ,, которые здесь не при чем, но этот код работает с хорошо отформатированным json. Тогда я просто даю подсказку, как решить проблему. Он/она лучше поймет, как манипулировать Json, если ему/ей придется думать о том, как получить значения.
Предполагая, что ваш файл json выглядит так:
{"data":{
"sample1":{
"some_number":"8410000110275080",
"some_number_2":"0070050001010011",
"name":"0000405533003537",
},
"sample2":{
"some_number":"8410000110275080",
"some_number_2":"0070050001010011",
"name":"0000405533003537",
}
}
Вы можете разобрать его, используя что-то вроде модуля json:
import json
# open the file using with
with open('myfile.json') as fh:
my_json = json.load(fh)
# Now my_json is a dictionary
# We can iterate over values of a dictionary
inner_dict = my_json['data']
some_number, some_number_2 = [], []
# Iterate over each value
for val in inner_dict.values():
some_number.append(val['some_number'])
some_number_2.append(val['some_number_2'])
Это недопустимый json. Есть ли обертка внешних брекетов
data?