Python 从字符串列表中写入csv时,如何在第一列上添加时间戳
我正在尝试写一个字符串列表Python 从字符串列表中写入csv时,如何在第一列上添加时间戳,python,csv,timestamp,Python,Csv,Timestamp,我正在尝试写一个字符串列表 data2={'yslow_score':54,'dom_content_loaded_time':7679,'page_elements':112} 到一个CSV文件,我可以这样做。但是我需要在第一列添加时间戳。下面是我的代码 with open('mycsvfile.csv','w') as f: w = csv.writer(f) w.writerow(data2.keys()) w.writerow(data2.values()) 我使用下面的代码来编写时间
data2={'yslow_score':54,'dom_content_loaded_time':7679,'page_elements':112}
到一个CSV文件,我可以这样做。但是我需要在第一列添加时间戳。下面是我的代码
with open('mycsvfile.csv','w') as f:
w = csv.writer(f)
w.writerow(data2.keys())
w.writerow(data2.values())
我使用下面的代码来编写时间戳。但这不是我要求的格式
for val in data2:
now = time.strftime('%d-%m-%Y %H:%M:%S')
w.writerow([now, val])
您可以使用Dict Writer方法写入CSV文件 这段代码适用于Python3
import csv
import time
data2 = {'yslow_score': 54, 'dom_content_loaded_time': 7679, 'page_elements': 112}
with open(path, 'w', newline="") as f:
fieldnames = ['Timestamp', 'yslow_score', 'dom_content_loaded_time', 'page_elements']
writer = csv.DictWriter(f, fieldnames=fieldnames)
writer.writeheader()
now = time.strftime('%d-%m-%Y %H:%M:%S')
print(now)
writer.writerow({'Timestamp': now, 'yslow_score': data2['yslow_score'], 'dom_content_loaded_time': data2['dom_content_loaded_time'], 'page_elements': data2['page_elements']})
您也可以使用熊猫数据帧
import pandas as pd
import time
# Transform your dictionary to pandas dataframe
df = pd.DataFrame.from_records([data2], index=[0])
# Insert timestamp at first column (as desired)
df.insert(0, 'timestamp', time.strftime('%d-%m-%Y %H:%M:%S'))
# Write to csv
df.to_csv('my_file.csv', index=False)
这应该是你想要的方式