Python CSV分隔符:单独的单元格

Python CSV分隔符:单独的单元格,python,csv,delimiter,Python,Csv,Delimiter,我正在努力理解如何在CSV中使用分隔符函数。下面的代码是到目前为止我所拥有的,但我尝试做的是将每个项目放在CSV文件的单独单元格中。我试过这个 我通过运行代码得到以下错误: Traceback (most recent call last): File "journal.py", line 18, in <module> w = csv.writer(f, delimiter = ',') TypeError: argument 1 must have a "write"

我正在努力理解如何在CSV中使用分隔符函数。下面的代码是到目前为止我所拥有的,但我尝试做的是将每个项目放在CSV文件的单独单元格中。我试过这个

我通过运行代码得到以下错误:

Traceback (most recent call last):
 File "journal.py", line 18, in <module>
    w = csv.writer(f, delimiter = ',')
TypeError: argument 1 must have a "write" method
回溯(最近一次呼叫最后一次):
文件“journal.py”,第18行,在
w=csv.writer(f,分隔符=',')
TypeError:参数1必须具有“write”方法

如何将我的输入输入到单独的单元格中而不是一个单元格中?

您正在尝试从csv.writer创建一个csv.writer;在生成f时,应该包含分隔符参数,并仅使用它。

csv.writer
需要类似文件的对象。看起来您尝试创建编写器两次。试试这个

import csv
data = [1, 2, 3, 4]
with open('file.csv', 'w') as f:
    wtr = csv.writer(f)  # use the file as the argument to writer
    wtr.writerow(data)
    f.close()

你就快到了。在我的例子中,f基本上应该是一个文件对象或fid。csv.writer第一个参数应该是一个文件ID,例如由open获取的('new.csv','w')


您不需要“w”变量,只需执行以下操作:

f = csv.writer(open("happy.csv", "wb"), delimiter=',')
f.writerow([x])
作为旁注:,所以您实际上不需要在这里做任何事情。
fid = open('new.csv','w')
w = csv.writer(fid,delimiter=',')

#write to file
fid.close()
f = csv.writer(open("happy.csv", "wb"), delimiter=',')
f.writerow([x])