Python正在列表fomat中的csv文件中写入数据

时间:2016-02-22 09:47:19

标签: python python-2.7 csv python-3.x

我有两个列表,想要将它们写入csv文件。我写了代码来编写csv文件。运行程序后,数据将写入csv文件。但是当我打开csv文件时,数据以列表格式存储,如:

[u'abc coffee'],[u'abc address']

但我想以正常形式编写csv文件,如:

"abc coffee, abc address"

我该怎么做?

import csv

ifile = open("ouput.csv","w")
writer = csv.writer(ifile)
company_name =["abc coffee"]        
rating_count = ["abc address"]

writer.writerow([company_name,rating_count])
ifile.close()

5 个答案:

答案 0 :(得分:0)

company_namerating_count已经是列表,您在撰写时将它们打包到另一个列表中。做

writer.writerow(company_name + rating_count)

代替。

答案 1 :(得分:0)

import csv

ifile = open("ouput.csv","w")
writer = csv.writer(ifile)

company_name =["abc coffee"]
rating_count = ["abc address"]

company_name.extend(rating_count) *add another item into the same list*

writer.writerow(company_name) *send the list to writer object which writes it to file*

ifile.close()

答案 2 :(得分:0)

您可以使用以下方法将列表显式写为连接字符串:

writer.writerow([' '.join(company_name), ' '.join(rating_count)])

答案 3 :(得分:0)

不需要包含csv库,也不需要使用列表来实现这种输出。

ifile = open("ouput.txt","w")
company_name ="abc coffee"        
rating_count = "abc address"

ifile.write(company_name + ", " +rating_count + "\n")
ifile.close()

就够了。

答案 4 :(得分:0)

花了很长时间后我终于找到了解决方案。我只是在字符串中转换上面的两个列表,然后在csv中编写它们我将它们转换为列表并连接它们。所以最终的代码是:

 import csv

 ifile = open("ouput.csv","w")
 writer = csv.writer(ifile)

 company_name ="abc coffee"
 rating_count = "abc address"

 writer.writerow([company_name]+[rating_count])

 ifile.close()

非常感谢大家的帮助。