New submission from Tyler Crompton <[email protected]>:
As you know, a caught exception can be re-raised with a simple `raise`
statement. Plain and simple. However, one cannot re-raise an error with this
new `"from" expression` clause.
For example:
def getch(prompt=''):
'''Get and return a character (similar to `input()`).'''
print(prompt, end='')
try:
return windows_module.getch()
except NameError:
try:
fallback_module.getch()
except Exception:
raise from None
Output:
File "getch.py", line 11
raise from None
^
SyntaxError: invalid syntax
A quick look at the documentation about
[raise](http://docs.python.org/dev/reference/simple_stmts.html#the-raise-statement)
confirms that this is the intended behavior. In my opinion, one should be able
to still re-raise from an expression.
----------
components: Interpreter Core
files: getch.py
messages: 164184
nosy: Tyler.Crompton
priority: normal
severity: normal
status: open
title: Re-raising exceptions from an expression
type: enhancement
versions: Python 3.3, Python 3.4
Added file: http://bugs.python.org/file26183/getch.py
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue15209>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com