...

Read File

whatg
07-12-2010, 03:24 PM
Am new to python so I decided to take some notes in .txt files and thought it would be a good idea if I had program that could read them! So I set out to do this. All is well except whenever there is a new line in the text file python prints "\n" instead of taking a new line.
This is my code:


name=raw_input("Which file would you like to read?")

second=".txt"

name = "%s%s" % (name,second)


file = open(name)

for line in file:
print line,


Text File:
Python is great
I love python
but why is it doing this?

Result:
Python is great \n I love python \n but why is it doing this?
What am I doing wrong!? Thanks

whatg
07-12-2010, 04:49 PM
Solved!!

abduraooft
07-13-2010, 11:00 AM
Solved!!
Share your solution please...

whatg
07-13-2010, 09:26 PM
Lol sorry, that would be a good idea!

Yeah when I was experimenting I put the new line characters into the text file so thats why they were showing up. Now I am having a problem taking a new line when there is one in the file e.g.

File:
Hi
Bye

Program Prints:
Hi Bye

Have been following the python guide but I seem to be doing something wrong, I can only seem to able to read the whole file at once and not just one line?!

Samhain13
07-14-2010, 08:51 PM
^ Well, nobody can tell you what's wrong with what you're doing if nobody can see it. But you should probably read up on read() and readlines(); they're very useful when you're working with text files.

whatg
07-15-2010, 10:02 AM
Done some more research and found that it doesn't work on mac os x because of some GNU licence agreement. I tried my program on linux and it worked fine. Am now looking at how to get it to work on the mac..

Does anyone know how to do that?

I had to chose the method that didn't work lol :-P

Samhain13
07-16-2010, 03:31 PM
Whatever. If you don't show people here how you're trying to do things, nobody can help you.

whatg
07-16-2010, 05:39 PM
Whatever. If you don't show people here how you're trying to do things, nobody can help you.

I am showing you what I'm doing, included the program source, its output and the desired result. I don't know how more clear I can be.

file.readline() does not work on mac for some strange reason!

Does anyone know how to solve this?

Samhain13
07-17-2010, 01:28 PM
file.readline() does not work on mac for some strange reason!
Does anyone know how to solve this?

Uhm. Put an s in file.readline? Like: file.readlines(). You should also catch the result in a variable because readlines() is going to return a list. But again, what are you trying to do and how are you trying to do it?

whatg
07-17-2010, 09:58 PM
I did try the readlines and it worked. I just didn't know how I would go about printing each line of text on a new line.

I simply want to read a text file and print it out in IDLE and so that when there is a new line of text this is represented in IDLE.

whatg
07-23-2010, 06:13 PM
When creating the file object use f = (filename, 'rU')

apparently the 'U' tells python to ignore the Unix line endings.

so the code would look something like this.

filename=raw_input("Give me a filename: ")

f = (filename, 'rU')

for line in f:
print line,

whatg
07-23-2010, 06:13 PM
When creating the file object use f = (filename, 'rU')

apparently the 'U' tells python to ignore the Unix line endings.

so the code would look something like this.

filename=raw_input("Give me a filename: ")

f = (filename, 'rU')

for line in f:
print line,


If only I could thank myself.. lol :P



EZ Archive Ads Plugin for vBulletin Copyright 2006 Computer Help Forum