Python 2.5.2- what was instead of 'with' statement
12,213
Solution 1
In Python 2.5, you actually can use the with
statement -- just import it from __future__
:
from __future__ import with_statement
Solution 2
If you can't, or don't want to use with
, then use finally
:
gzipHandler = gzip.open(gzipFile)
out = open(txtFile, 'w')
try:
for line in gzipHandler:
out.write(line)
finally:
out.close()
gzipHandler.close()
The cleanup code in the finally
clause will always be excecuted, whether an exception is raised, or not.
Author by
Ron D.
Updated on August 17, 2022Comments
-
Ron D. almost 2 years
I wrote my code for python 2.7 but the server has 2.5. How do i rewrite the next code so it will run in python 2.5.2:
gzipHandler = gzip.open(gzipFile) try: with open(txtFile, 'w') as out: for line in gzipHandler: out.write(line) except: pass
Right now, when i try to run my script I get this error:
Warning: 'with' will become a reserved keyword in Python 2.6 Traceback (most recent call last): File "Main.py", line 7, in from Extractor import Extractor File "/data/client/scripts/Extractor.py", line 29 with open(self._logFile, 'w') as out: ^ SyntaxError: invalid syntax
Thanks, Ron.