python grep

Stefan Behnel stefan_ml at behnel.de
Thu Apr 8 13:31:47 CEST 2010


Mag Gam, 08.04.2010 13:21:
> I am in the process of reading a zipped file which is about 6gb.
>
> I would like to know if there is a command similar to grep in python
> because I would like to emulate, -A -B option of GNU grep.
>
> Lets say I have this,
>
> 083828.441,AA
> 093828.441,AA
> 094028.441,AA
> 094058.441,CC
> 094828.441,AA
> 103828.441,AA
> 123828.441,AA
>
>
> if I do grep -A2 -B2 "CC"
>
> I get 2 lines before and 2 lines after "C"
>
> Is there an easy way to do this in python?

Sure, just use a sliding window.

However, for a 6BG file, you won't really like the performance. It's 
basically impossible to beat the speed of (f)grep.

I'd use the subprocess module to run zfgrep over the file and parse the 
output in Python.

Stefan




More information about the Python-list mailing list