所以我有一个程序从.Json创建CSV.
首先我加载json文件.
f = open('Data.json')
data = json.load(f)
f.close()
Run Code Online (Sandbox Code Playgroud)
然后,如果我找到该关键字,我会查找特定的关键字.我将在.csv文件中编写与之相关的所有内容.
for item in data:
if "light" in item:
write_light_csv('light.csv', item)
Run Code Online (Sandbox Code Playgroud)
这是我的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']})
Run Code Online (Sandbox Code Playgroud)
我最初有wb+模式,但每次打开文件写入时都清除了所有内容.我用它替换了它,a现在每次写入时,它都会添加一个标题.如何确保标题只写一次?