我有几个CSV文件,如下所示:
Input
Name Code
blackberry 1
wineberry 2
rasberry 1
blueberry 1
mulberry 2
我想在所有CSV文件中添加一个新列,使其看起来像这样:
Output
Name Code Berry
blackberry 1 blackberry
wineberry 2 wineberry
rasberry 1 rasberry
blueberry 1 blueberry
mulberry 2 mulberry
到目前为止,我的脚本是:
import csv
with open(input.csv,'r') as csvinput:
with open(output.csv, 'w') as csvoutput:
writer = csv.writer(csvoutput)
for row in csv.reader(csvinput):
writer.writerow(row+['Berry'])
(Python 3.2)
但是在输出中,脚本跳过了每一行,新列中仅包含Berry:
Output
Name Code Berry
blackberry 1 Berry
wineberry 2 Berry
rasberry 1 Berry
blueberry 1 Berry
mulberry 2 Berry
这应该使您知道该怎么做:
>>> v = open('C:/test/test.csv')
>>> r = csv.reader(v)
>>> row0 = r.next()
>>> row0.append('berry')
>>> print row0
['Name', 'Code', 'berry']
>>> for item in r:
... item.append(item[0])
... print item
...
['blackberry', '1', 'blackberry']
['wineberry', '2', 'wineberry']
['rasberry', '1', 'rasberry']
['blueberry', '1', 'blueberry']
['mulberry', '2', 'mulberry']
>>>
编辑,注意在py3k中必须使用 next(r)
感谢您接受答案。在这里,您有一个好处(您的工作脚本):
import csv
with open('C:/test/test.csv','r') as csvinput:
with open('C:/test/output.csv', 'w') as csvoutput:
writer = csv.writer(csvoutput, lineterminator='\n')
reader = csv.reader(csvinput)
all = []
row = next(reader)
row.append('Berry')
all.append(row)
for row in reader:
row.append(row[0])
all.append(row)
writer.writerows(all)
请注意
lineterminator
参数csv.writer
。默认情况下,它设置为'\r\n'
,这就是为什么间距为两倍的原因。writerows
。如果文件很大,这可能不是一个好主意(RAM),但是对于普通文件,我认为它会更快,因为I / O较少。with
,您可以在同一行中执行以下操作,而不是嵌套两个语句:使用open(’C:/test/test.csv’,’r’)作为csvinput,open(’C:/test/output.csv’,’w’)作为csvoutput:
我有几个CSV文件如下所示: 我想添加一个新的列到所有的CSV文件,使它看起来像这样: 到目前为止,我的剧本是: (Python 3.2) 但在输出中,脚本跳过每一行,新列中只有Berry:
问题内容: 我有一个CSV文件,例如 我想加上引号使它像: 最快的方法是什么?我将在cronjob中实现它。 问题答案: 使用sed:
我有一个链接到一个包含不同值的在线XML文件。我已经编写了一段代码,允许我检索这个文件中两个特定标记的内容,并将它们放入一个csv文件中。 第一个标记是: 第二个是带有以下内容的url: 我的问题是,在输出csv文件中,我确实得到了URL,但它们是放在列中的,而id没有放在我的csv文件中: 我怎样才能让输出文件像这样呢?
我在文件。我正在使用要成为电子邮件模板和电子邮件,我需要添加图像,但我不能。我是新加入节点的。js和Stack Overflow,我在下面放了一些关于我的代码的信息。 app.useexpress.static(path.join__dirname)
问题内容: 我正在尝试使用mpdf将html转换为pdf。问题是我无法将CSS应用于pdf文件。 这是我的php代码: 它在做什么是在我的此php页面上通过ajax提取html。但是它给出的输出并不带有我为此编写的css。 请告诉我现在要做吗? 问题答案: 首先分配您的html,然后包含 mpdf.php 文件。
问题内容: 假设您有一个文件 并希望添加一些标头信息,例如 如何添加此“标题”?手动执行似乎很简单。点击几回车,复制/粘贴或写信息,就可以了。当然,在R中,我可以读入,创建,添加标题信息,然后。 我想知道是否还有另一种从“顶部”附加文件的方法。也欢迎使用其他解决方案(来自c ++或Java …)(我很好奇其他语言如何解决此问题)。 问题答案: 在R中,不需要使用额外的文件。您可以这样做: 但是,使