我正在尝试使用以下代码将数组保存到csv文件中:
with open("output.csv", "wb") as f:
writer = csv.writer(f)
writer.writerows(dvds)
数组是:
dvds = ["monsters inc","terminator genisys","taken","taken 2","taken 3","ted","ted 2","world war z","hitman"]
但是当生成文件时,它会将每个字母分别分成不同的列。这是下载我的output.csv file
的链接我希望在一列中获得1个电影标题,而不是将电影的标题分散到多个列中。当你下载上面的文件时,你会看到我的意思。
请让我知道如何解决问题。
答案 0 :(得分:0)
问题是writerows
需要一个行列表。每行应该是一个序列,每列一个元素。
您将通过撰写以下内容获得相同的不良行为:
writer.writerow("monsters inc")
#instead of
writer.writerow(["monsters inc"])
这是因为它试图将行拆分成列,在这种情况下唯一的方法是每列一个字母
尝试像这样更改输入列表
dvds = [["monsters inc"],["terminator genisys"],["taken"],["taken 2"],["taken 3"],["ted"],["ted 2"],["world war z"],["hitman"]]
这可以像
那样完成dvd_rows = [[dvd] for dvd in dvds]