Python не записывает все значения ключа (JSON)

#python #json

Вопрос:

Код:

 import json

data = open('data.json', 'r')
data = json.load(data)
x = open('test.txt', 'w')
for s in range(len(data)):
        print(data[s]["osm_id"])
        x.write(str(data[s]["osm_id"])   "n")
 

JSON:
https://openenergy-platform.org/api/v0/schema/openstreetmap/tables/osm_deu_point_windpower/rows/

Проблема: Не все значения «osm_id» записаны в TXT-файл, а только небольшая часть. Однако я хочу, чтобы в TXT-файле было каждое значение «osm_id».

Ответ №1:

Я думаю, что вы должны закрыть свои файлы, как только закончите с ними:

 import json

with open('data.json', 'r') as data:
    data = json.load(data)

with open('test.txt', 'w') as x:
    for s in range(len(data)):
        print(data[s]["osm_id"])
        x.write(str(data[s]["osm_id"])   "n")
 

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

1. В нем написано еще около 500 значений, но это еще не все…

2. Я не могу точно сказать, сколько их, но они должны начинаться с первого osm_id и с последнего, а не со скрипта

3. Хорошо, каковы первые и последние значения, которые вы ожидаете?

4. @zTrusted какую версию python вы используете?

5. @juanpa.arrivillaga 3.8.2