On Apr 20, 1:06 pm, MRAB <pyt...@mrabarnett.plus.com> wrote: > Dodo wrote: > > Hello, > > > I don't understand why this won't execute > > > import urllib.request as u > > import socket > > socket.setdefaulttimeout(10) > > > l = "http://img144.imageshack.us/my.php?image=koumakandg8.jpg" # > > supposed to timeout > > try: > > h = u.urlretrieve(l) > > except u.URLError, e: # I tried u.e too, no effect. > > print(e) > > except: > > print("other error") > > > The error : > > > ...\Python>err.py > > File "...\err.py", line 8 > > except u.URLError, e: # I tried u.e too, no effect. > > ^ > > SyntaxError: invalid syntax > > In Python 3 it's: > > except u.URLError as e: > > This a because in Python 2 people sometimes write: > > except OSError, IOError: > > thinking that it will catch both OSError and IOError.
except (OSError, IOError), e: # Python 2.x If you put them in a tuple, it will catch them, right? -- http://mail.python.org/mailman/listinfo/python-list