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

如何在python中删除行CSV

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

如何在python中删除行CSV

该解决方案使用

fileinput
with
inplace=True
,它会写入一个临时文件,然后在最后自动将其重命名为您的文件名。您无法从文件中 删除 行,但只能用所需的行重写它。

如果将关键字参数

inplace=1
传递给构造函数
fileinput.input()
或将其传递给
FileInput
构造函数,则该文件将移动到备份文件,并且标准输出将定向到输入文件(如果已经存在与备份文件同名的文件,它将被无提示替换)
。这样就可以编写一个过滤器,该过滤器可以在适当位置重写其输入文件。

文件A

h1,h2,h3a,b,cd,e,fg,h,ij,k,l

文件B

h1,h2,h3a,b,c1,2,3g,h,i4,5,6

import fileinput, sys, csvwith open('fileB', 'rb') as file_b:    r = csv.reader(file_b)    next(r) #skip header    seen = {(row[0], row[2]) for row in r}f = fileinput.input('fileA', inplace=True) # sys.stdout is redirected to the fileprint next(f), # write header as first linew = csv.writer(sys.stdout) for row in csv.reader(f):   if (row[0], row[2]) in seen: # write it if it's in B       w.writerow(row)

文件A

h1,h2,h3a,b,c    g,h,i


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

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

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