Я боролся с проблемой при добавлении объектов в список в Python. После получения файла JSON он присваивает каждое значение объекту House и добавляет его в список homes . Однако после добавления второго объекта он перезаписывает первый объект в списке. Не могли бы вы мне помочь?
jsonfile. json
"features": [
{
"properties": {
"id": "ea299c1e-2bbb-5a97-bb94-befe384f0eb2",
"name": "Albert"
},
{
"properties": {
"id": "47200ba4-db80-56fa-99ad-c4abe7296376",
"name": "Batman"
}
python .py
class House:
def __init__(self, id, name):
self.id = id
self.name=name
houses =[]
......
with open('./data/jsonfile.json', 'r') as myfile:
data = myfile.read()
obj = json.loads(data)['features']
for o in obj:
print(o['properties']['id'])
House.id = o['properties']['id']
House.name = o['properties']['name]
print(House.id)
houses.append(House)
print("----------------------")
print("----------------------")
print(houses[0].id)
print(houses[1].id)
print(len(houses))
консоль
ea299c1e-2bbb-5a97-bb94-befe384f0eb2
ea299c1e-2bbb-5a97-bb94-befe384f0eb2
----------------------
47200ba4-db80-56fa-99ad-c4abe7296376
47200ba4-db80-56fa-99ad-c4abe7296376
----------------------
----------------------
47200ba4-db80-56fa-99ad-c4abe7296376. <--- It should be 'ea299c1e-2bbb-5a97-bb94-befe384f0eb2'
47200ba4-db80-56fa-99ad-c4abe7296376
2