Итак, у меня есть программа, которая создает CSV из .Json.
Сначала загружаю json файл.
f = open('Data.json')
data = json.load(f)
f.close()
Затем я просматриваю это, ища конкретное ключевое слово, если найду это ключевое слово. Я напишу все, что связано с файлом .csv.
for item in data:
if "light" in item:
write_light_csv('light.csv', item)
Это моя функция write_light_csv
:
def write_light_csv(filename,dic):
with open (filename,'a') as csvfile:
headers = ['TimeStamp', 'light','Proximity']
writer = csv.DictWriter(csvfile, delimiter=',', lineterminator='\n',fieldnames=headers)
writer.writeheader()
writer.writerow({'TimeStamp': dic['ts'], 'light' : dic['light'],'Proximity' : dic['prox']})
У меня первоначально был wb+
как режим, но он очищал все каждый раз, когда файл был открыт для записи. Я заменил его на a
и теперь каждый раз, когда он пишет, он добавляет заголовок. Как я могу убедиться, что заголовок написан только один раз?.