speed up linecache.getline()

2009-10-13 Thread bbarbero

Hi Everyone!!


I am using linecache.getline, to access to a line in a long file. It s  
really fast, appx 4seconds, but I was just wandering if any of you,  
know either another way, or there is something that I can do to speed  
it up...  thank you very much for your help!!


Regards,
Bea











Quoting Chris Rebert c...@rebertia.com:


On Wed, Oct 7, 2009 at 10:21 AM,  bbarb...@inescporto.pt wrote:

Hi again!

After testing the whole day, I have got my goals from the last email, but as
always, another issues came up! and now that Ive been able to save a list of
list (or multi-arrays) as below :

['100.mp3\n' '10008.mp3\n' '10005.mp3\n' '10001.mp3\n' '10006.mp3\n']
['10001.mp3\n' '10005.mp3\n' '100.mp3\n' '10008.mp3\n' '10006.mp3\n']
['10005.mp3\n' '10001.mp3\n' '100.mp3\n' '10008.mp3\n' '10006.mp3\n']
['10006.mp3\n' '10005.mp3\n' '10001.mp3\n' '100.mp3\n' '10008.mp3\n']
['10008.mp3\n' '100.mp3\n' '10001.mp3\n' '10005.mp3\n' '10006.mp3\n']

I am not able to manipulate it again! I read it with:
Myfile.read() and all what I get is a str type data, what make my aim very
difficult to reach!  What I want, is just to read one line(one specific
line, so  I wouldnt have to read the whole file) and to get the numbers of
the songs from that line. Maybe I should save the information in another
way... But I just get those lines as lists, and write them in a file. Is
there a better way? I am very receptive to suggestions! Thanks again for
your help!


Have you considered using the `json` module
(http://docs.python.org/library/json.html) to serialize and
deserialize the lists to/from a file in JSON format?
The `pickle` module is another option:
http://docs.python.org/library/pickle.html

Cheers,
Chris
--
http://blog.rebertia.com






This message was sent using IMP, the Internet Messaging Program.
--
http://mail.python.org/mailman/listinfo/python-list


Re: speed up linecache.getline()

2009-10-13 Thread Gabriel Genellina

En Tue, 13 Oct 2009 10:21:31 -0300, bbarb...@inescporto.pt escribió:

I am using linecache.getline, to access to a line in a long file. It s  
really fast, appx 4seconds, but I was just wandering if any of you, know  
either another way, or there is something that I can do to speed it  
up...  thank you very much for your help!!


If all the lines in the file have exactly the same length, you may seek to  
the specific line and read it at once.
Otherwise I'm afraid you have to read all the previous n-1 lines to get to  
line n, and that's what makes it slow.


--
Gabriel Genellina

--
http://mail.python.org/mailman/listinfo/python-list