On 7/23/2017 1:03 AM, Alan Gauld via Tutor wrote:
On 23/07/17 07:26, N6Ghost wrote:

f = open("C:\coderoot\python3\level1\inputfile.txt", 'r')
for line in file:
Note that you have no variable called 'file'.
So this line doesn't make sense.

      for line in f:
          print(line.rstripe())
This bit will work if you omit the line above and
fix the indentation. (and remove the 'e' from strip()

          f.close()
This should be outside the loop, you don't want
to close the file after every line.

Finally, there is another way to do this which
is considered 'better'/more Pythonic:

with open("C:\coderoot\python3\level1\inputfile.txt", 'r') as f:
      for line in f:
          print(line.strip())

Notice with this construct the closing of the file is
handled for you.

any idea why that does not work?
When posting questions always include the full error text.
Although apparently cryptic it actually contains a lot of
useful detail which saves us from making guesses.


update code:
f = open("C:\coderoot\python3\level1\inputfile.txt", 'r')
for line in f:
    for line in f:
        print(line.rstripe())

        f.close()


C:\coderoot\python3\level1>python secondscript.py
Traceback (most recent call last):
  File "secondscript.py", line 5, in <module>
    print(line.rstripe())
AttributeError: 'str' object has no attribute 'rstripe'




_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor

Reply via email to