Bug writing/reading to file.

Guilherme Polo ggpolo at gmail.com
Mon Dec 24 07:34:03 EST 2007


2007/12/24, arne.k.h at gmail.com <arne.k.h at gmail.com>:
> Hi! :)
>
> Im new to python, and I have made a electronic diary - its just a
> task. Here is the code:
> http://pastebin.com/m49391798
>
> The bug is (feel free to download and test it) that i can't see what i
> wrote in the diary without restarting the program. Here is an example:
>
> 1: I start the program
> 2: (text.txt is empty)
> 3: I write "hello, how are you?" with the writing-function in the
> program
> 4; I use the read-all-function in the program.
> 5: There is no entries in the diary. But if I restart the program, I
> can read the file.
>
> The strange thing is that if i watch the file contents while im using
> the program, I see that i add the line "hello, how are you?" to the
> file, but i can't read it with the read-function.
>
> Can this be a problem with file-pointers? And how can i solve it?

When you start you store 'text.txt' lines in query, and since it was
empty there were no lines so you are storing an empty list. Then later
you ask to print all the entries iterating this empty list and it
correctly prints nothing. To solve this you need to reread 'text.txt'
lines.

Besides the solution I need to make some points:
- Post a shorter sample next time
- You don't need to use readlines() for this, just use for line in
yourfileobject: ...
- Also, you dont need that x, you could use for indx, line in
enumerate(yourfileobject): ...
- I didn't look at the rest of the code, so there could be more
corrections worth being noted

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


-- 
-- Guilherme H. Polo Goncalves



More information about the Python-list mailing list