我正在尝试使用Python在CVS文件中保存一些信息。
当我运行它时,它看起来可以工作,但是当我转到该文件时,什么都没出现
这是我的代码:
dic = {"name": "jason", "name": "mike"}
file = "names.csv"
cvs = open(file, "a")
column = "name,name2\n"
cvs.write(column)
for key in dic.keys():
name = key
name2 = dic[key]
fil = name + "," + name2 + "\n"
cvs.write(fil)
答案 0 :(得分:0)
(它是csv
,而不是cvs
。CSV是逗号分隔值,CVS是药店)。
您永远不会关闭文件。只需输入
cvs.close()
在代码末尾,它应该可以按预期工作。
答案 1 :(得分:0)
简单:
import csv
data = {'name':'jason','name':'mike'}
with open('names.csv', 'w+') as csvf:
writer = csv.DictWriter(csvf, fieldnames=['name'])
writer.writeheader()
for key, value in data.items():
writer.writerow(value)
答案 2 :(得分:0)
首先,这是一个严重的问题-字典中不能多次使用相同的键!您可能有{'names':['Mike','Jason']},但按原样,其中一个将被另一个重写。这可能是您问题的一部分。
第二,通常来说,通过pandas.DataFrame.from_dict
之类的函数通过熊猫进行csv创建要容易得多-更容易,更不易出错,等等-实际上我强烈建议不要编写此类文件手动。 (尽管这是我喜欢熊猫的全部内容。)
correctDict = {'names': ['Mike', 'Jason']}
df = pandas.DataFrame.from_dict(correctDict)
df.to_csv('myFile.csv')
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.from_dict.html