By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
464,725 Members | 1,099 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 464,725 IT Pros & Developers. It's quick & easy.

RE: Why is try...except in my code not working (gzip/text files) ?

P: n/a
Thanks Gabriel,
Okay, I get it: I was under the impression that the format check would be done on the open.

-----Original Message-----
From: Gabriel Genellina [mailto:ga*******]
Sent: Thursday, November 20, 2008 02:06
To: py*********
Subject: Re: Why is try...except in my code not working (gzip/text files) ?

En Wed, 19 Nov 2008 13:25:03 -0200, Barak, Ron <Ro*******>
I need to read a file that is either a gzip or a text file (on both
*nix and Windows).
Since I didn't find a way to determine a file type, I thought of using
the following:

import gzip

FILE = "../dpm/save_state-ssp8400-F0023209_080723-110131/top.1"

file = gzip.GzipFile(FILE, "r") except IOError:
file = open(FILE, "r")

Strangely, when FILE is a gzip file, all is fine.
But, when FILE is a text file (as in the above code), I get the

$ python ./
Traceback (most recent call last):
File "./", line 11, in <module>
print <<<===================
File "c:\Python25\lib\", line 220, in read
File "c:\Python25\lib\", line 263, in _read
File "c:\Python25\lib\", line 164, in _read_gzip_header
raise IOError, 'Not a gzipped file'
IOError: Not a gzipped file

Can you explain why the try...except in my code does not work ?
Or, back to my original problem: how do I deal with a file whether
it's a text file or a gzip file ?
Note *where* the exception is raised. Until something is actually read, no check is made for the file format.

Gabriel Genellina
Nov 20 '08 #1
Share this question for a faster answer!
Share on Google+

This discussion thread is closed

Replies have been disabled for this discussion.