我写了一个函数,可以将字典作为字符串导出到csv文件中。 在我的作业中,我被指示将这个字典导出为一个字符串(我从字典中取出键,并用逗号分隔它们-不能有空格)。我有一个测试此功能的文件-我在这里,所以它当然会失败。但是,当我打印该函数的输出时,它看起来像我的任务,例如sth1,sth2,sth3,sth4。我在这里想念的是什么? 这是我的代码:
def export_stock(stock, filename="export.csv"):
with open(filename, "w+") as exportation:
a = list(stock.keys())
a = ",".join(a)
exportation.write(a)
这是测试功能:
def test_export(self):
export_stock({'sth1': 3, 'sth2': 1, "sth3": 1},
"export.csv")
with open("export.csv", newline='') as csvfile:
expected = ["sth1", "sth2", "sth3", "sth1", "sth1"]
expected.sort()
reader = csv.reader(csvfile, delimiter=',', quotechar='|')
for row in reader:
row.sort()
self.assertListEqual(expected, row)
答案 0 :(得分:0)
调用函数时,您要传入文件名test_stock_export.csv
,因此它将结果导出到该文件。在测试中,打开export.csv
并检查其中的结果。我认为您打算在测试中打开test_stock_export.csv
。