使用python,如何删除csv文件中的整行如果该行中存在特定字符? [英] using python, how to remove whole line in csv file if specific character is present in this line?

查看:3162
本文介绍了使用python,如何删除csv文件中的整行如果该行中存在特定字符?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有大型csv档案,216961行:

I have large csv file, 216961 lines:

9808,54,43,59,999,17,10,59,999,-1,0,0
9809,54,43,59,999,17,12,0,-1,0,0
9810,54,43,59,999,17,13,0,001,-1,0,0
9811,54,43,59,999,17,13,59,999,-1,0,0
9812,54,43,59,999,17,15,0,-1,0,0
9813,54,43,59,999,17,16,0,001,0,0,0
9814,54,43,59,999,17,16,59,999,0,0,0
9815,54,43,59,999,17,18,0,0,0,0
9816,54,43,59,999,17,19,0,001,0,0,0
9817,54,43,59,999,17,19,59,999,0,0,0
9818,54,43,59,999,17,21,0,0,0,0
9819,54,43,59,999,17,22,0,001,0,0,0
9820,54,43,59,999,17,22,59,999,0,0,0

我需要筛选文件并删除所有行,其中-1存在,约6900行,
所以我想请求您的帮助


我的尝试:


I need to sieve the file and remove all lines where -1 is present, about 6900 lines, so I would like to ask for Your help

my attempt:

import csv
reader = csv.reader(open("file.csv", "rb"), delimiter=',')
for line in reader:
    match = line[7]
    if match not in '-1':
        print line



但是-1不总是在行[7]


but -1 is not always at line[7]

推荐答案

尝试这种方法。

import csv
reader = csv.reader(open("file.csv", "rb"), delimiter=',')
for line in reader:
    if "-1" not in line:
        print line

这篇关于使用python,如何删除csv文件中的整行如果该行中存在特定字符?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆