栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在CSV文件中添加新列?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在CSV文件中添加新列?

这应该使您知道该怎么做:

>>> 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 csvwith 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)

请注意

  1. 中的
    lineterminator
    参数
    csv.writer
    。默认情况下,它设置为
    'rn'
    ,这就是为什么间距为两倍的原因。
  2. 使用列表附加所有的行并用
    writerows
    。如果文件很大,这可能不是一个好主意(RAM),但是对于普通文件,我认为它会更快,因为I / O较少。
  3. 如本文评论中所述,请注意
    with
    ,您可以在同一行中执行以下操作,而不是嵌套两个语句:

使用open(’C:/test/test.csv’,’r’)作为csvinput,open(’C:/test/output.csv’,’w’)作为csvoutput:



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/636989.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号