使用 headers 将数组保存在一个 csv 文件中
save array in one csv file with headers
我有两个表格列表:
旧参考和新参考,我想修改此功能以将两个列表保存在一个 csv 文件中以获得此
old_references= ["POT-94000-FT-42"]
new_references = ["POT-94000-FT-43"]
headers = ["old_references", "new_references"]
我知道如何在 pandas 中执行此操作,不幸的是我无法在计算机上访问 pandas。
谢谢你的建议。
def exportCsv(liste):
date = str(datetime.datetime.now().strftime("%d-%m-%Y %H-%M-%S"))
csv_file = open(os.path.join(sortie, 'increment_reference_{}_'.format(date) + '.csv'), 'w')
writer = csv.writer(csv_file)
writer.writerows([liste])
感谢您的建议
在 csv.writer
中,您应该在开头添加 header 行。除此之外,你看起来不错。
一个干净的替代方案可能是 csv.DictWriter
,它更接近我认为的 pandas 功能。
dicts = [
{
"old_references": old,
"new_references": new
}
for new, old in zip(new_references, old_references)
]
with open('test.csv', 'w') as f:
writer = DictWriter(f, list[dicts[0]])
writer.writeheader()
writer.writerows(dicts)
不完全清楚您使用的是哪种 liste 对象。我认为在您的情况下值得使用 writerow 方法。
writer.writerow(headers)
writer.writerow([old_references[0], new_references[0]])
还有,别忘了读/写结束后一定要关闭文件
csv_file.close()
为了不每次都明确规定,使用with上下文管理器是有意义的。
date = str(datetime.datetime.now().strftime("%d-%m-%Y %H-%M-%S"))
with open(os.path.join(sortie, 'increment_reference_{}_'.format(date) + '.csv'), 'w') as csv_file:
writer = csv.writer(csv_file)
writer.writerow(headers)
writer.writerow([old_references[0], new_references[0]])
在这种情况下,文件将在上下文管理器结束后自动关闭。
我有两个表格列表: 旧参考和新参考,我想修改此功能以将两个列表保存在一个 csv 文件中以获得此
old_references= ["POT-94000-FT-42"]
new_references = ["POT-94000-FT-43"]
headers = ["old_references", "new_references"]
我知道如何在 pandas 中执行此操作,不幸的是我无法在计算机上访问 pandas。 谢谢你的建议。
def exportCsv(liste):
date = str(datetime.datetime.now().strftime("%d-%m-%Y %H-%M-%S"))
csv_file = open(os.path.join(sortie, 'increment_reference_{}_'.format(date) + '.csv'), 'w')
writer = csv.writer(csv_file)
writer.writerows([liste])
感谢您的建议
在 csv.writer
中,您应该在开头添加 header 行。除此之外,你看起来不错。
一个干净的替代方案可能是 csv.DictWriter
,它更接近我认为的 pandas 功能。
dicts = [
{
"old_references": old,
"new_references": new
}
for new, old in zip(new_references, old_references)
]
with open('test.csv', 'w') as f:
writer = DictWriter(f, list[dicts[0]])
writer.writeheader()
writer.writerows(dicts)
不完全清楚您使用的是哪种 liste 对象。我认为在您的情况下值得使用 writerow 方法。
writer.writerow(headers)
writer.writerow([old_references[0], new_references[0]])
还有,别忘了读/写结束后一定要关闭文件
csv_file.close()
为了不每次都明确规定,使用with上下文管理器是有意义的。
date = str(datetime.datetime.now().strftime("%d-%m-%Y %H-%M-%S"))
with open(os.path.join(sortie, 'increment_reference_{}_'.format(date) + '.csv'), 'w') as csv_file:
writer = csv.writer(csv_file)
writer.writerow(headers)
writer.writerow([old_references[0], new_references[0]])
在这种情况下,文件将在上下文管理器结束后自动关闭。