On 07Jul2024 22:22, Rob Cliffe <rob.cli...@btinternet.com> wrote:
Remember, the `open()` call returns a file object _which can be used
as a context manager_. It is separate from the `with` itself.
Did you test this?
f = open(FileName) as f:
is not legal syntax.
No. You're right, remove the "as f:".
it's legal, but doesn't work (trying to access the file after "with f"
raises the same
ValueError: I/O operation on closed file.
This astounds me. Code snippet to demo this?
Here's a test script which I've just run now:
FileName = 'foo.txt'
try:
f = open(FileName)
except FileNotFoundError:
print(f"File {FileName} not found")
sys.exit()
with f:
for line in f:
print("line:", line.rstrip())
Here's the foo.txt file:
here are
some lines of text
Here's the run:
% python3 p.py
line: here are
line: some lines of text
--
https://mail.python.org/mailman/listinfo/python-list