2

実験として、失敗したアサーションをキャッチしてみました。

try: assert 1==2
except Exception as e: print e

なぜ何も表示されないのですか?

4

1 に答える 1

13
>>> try: assert 1==2
... except Exception as e: print type(e)
...
<type 'exceptions.AssertionError'>

また

>>> try: assert 1==2, "They Are Not Equal!!"
... except Exception as e: print e
...
They Are Not Equal!!

理由について:呼び出し__str__時に例外のメソッドを呼び出しprintています...そこにテキストを入れていないため、テキストは空の文字列です...これが印刷されます。

于 2013-06-28T20:18:58.453 に答える