except ステートメントの ',' と 'as' の違いは何ですか? 例:
try:
pass
except Exception, exception:
pass
そして:
try:
pass
except Exception as exception:
pass
2 番目の構文は 2.6 では合法ですか? Windows 上の CPython 2.6 では動作しますが、cygwin の 2.5 インタープリターは無効であるとエラーを出力します。
両方とも 2.6 で有効な場合、どちらを使用すればよいですか?
ベストアンサー1
決定的な文書はPEP-3110:例外のキャッチです。
まとめ:
- Python 3.x では、例外を変数に割り当てるには を使用する必要があります
as
。 - Python 2.6 以降では、
as
構文を使用します。この構文は曖昧さが少なく、Python 3.x との前方互換性があります。 - Python 2.5 以前では、サポートされていないため、コンマ バージョンを使用します
as
。