【发布时间】:2020-01-25 09:32:21
【问题描述】:
我正在尝试使用 csv 库将传感器数据从在线 api 获取到 csv 文件。每当我尝试将多个值附加在一行中时,这些值都会增加……
['22.00'] ['71.00'] ['0.00']
['22.00', '22.00'] ['71.00', '71.00'] ['0.00', '0.00']
['22.00', '22.00','22.00'] ['71.00', '71.00','71.00'] ['0.00','0.00', '0.00']
这是我得到的输出。 这是我的代码:
while True:
data_temp = requests.get(temp_url).json()
data_hum = requests.get(hum_url).json()
data_flame = requests.get(flame_url).json()
feilds_temp = data_temp['feeds']
feilds_hum = data_hum['feeds']
feilds_flame = data_flame['feeds']
with open('testdata.csv','a') as csv_file:
for x in feilds_temp:
temp.append(x['field1'])
for y in feilds_hum:
humid.append(y['field2'])
for z in feilds_flame:
flame.append(z['field3'])
csv_write = csv.DictWriter(csv_file, fieldnames= fieldnames)
data = {
"temperature": temp,
"humidity": humid,
"flame": flame
}
csv_write.writerow(data)
print(temp, humid, flame)
time.sleep(15)
【问题讨论】:
-
尝试用“csv.writerows(data)”替换“csv.writerow(data)”
-
如果这不起作用,请尝试 csv_write.writerow([data]) - 特定的 CSV 写入器将内容放在列表中
-
不,这也不起作用。我仍然得到相同的格式