タグ付けされた質問 「finally」


6
「最終的に」は常にPythonで実行されますか?
Pythonで可能なtry-finallyブロックの場合、finallyブロックが常に実行されることが保証されていますか? たとえば、exceptブロック内に戻ったとしましょう: try: 1/0 except ZeroDivisionError: return finally: print("Does this code run?") または多分私は再調達しExceptionます: try: 1/0 except ZeroDivisionError: raise finally: print("What about this code?") テストはfinally、上記の例で実行されることを示していますが、私が考えていない他のシナリオがあると思います。 finallyPythonでブロックの実行が失敗する可能性のあるシナリオはありますか?



15
最終的にブロックで例外をスローします
finallyブロックでスローされる例外を処理するエレガントな方法はありますか? 例えば: try { // Use the resource. } catch( Exception ex ) { // Problem with the resource. } finally { try{ resource.close(); } catch( Exception ex ) { // Could not close the resource? } } ブロック内のtry/をどのように回避しますか?catchfinally

4
Pythonの「with」ステートメントをtry-exceptブロックで使用する
これは、Pythonの「with」ステートメントをtry-exceptブロックと組み合わせて使用​​する正しい方法ですか?: try: with open("file", "r") as f: line = f.readline() except IOError: <whatever> もしそうなら、それから物事の古い方法を考えてください: try: f = open("file", "r") line = f.readline() except IOError: <whatever> finally: f.close() ここでの「with」ステートメントの主な利点は、3行のコードを削除できることですか?この使用例では、私にとって説得力があるとは思えません( "with"ステートメントには他の使用があることは理解していますが)。 編集:上記の2つのコードブロックの機能は同じですか? EDIT2:最初のいくつかの回答は「with」を使用することの利点について一般的に述べていますが、それらはここではわずかな利点のようです。私たちは何年もの間、明示的にf.close()を呼び出してきました(またはそうすべきだったはずです)。1つの利点は、ずさんなコーダーが「with」を使用することから利益を得るということです。

11
なぜfinallyブロックを使用するのですか?
私の知る限り、次のコードスニペットはどちらも同じ目的を果たします。なぜfinallyブロックがあるのですか? コードA: try { /* Some code */ } catch { /* Exception handling code */ } finally { /* Cleanup code */ } コードB: try { /* Some code */ } catch { /* Exception handling code */ } // Cleanup code
91 java  .net  finally 

4
Angular.jsで約束が果たされたときに常にコードを実行する方法
私のAngular.jsアプリケーションでは、非同期操作を実行しています。開始する前に、モーダルdivでアプリケーションをカバーします。操作が完了したら、操作が成功したかどうかに関係なく、divを削除する必要があります。 現在私はこれを持っています: LoadingOverlay.start(); Auth.initialize().then(function() { LoadingOverlay.stop(); }, function() { LoadingOverlay.stop(); // Code needs to be duplicated here }) それはうまく機能しますが、私はこの疑似コードのようなよりクリーンなものが欲しいです: LoadingOverlay.start(); Auth.initialize().finally(function() { // *pseudo-code* - some function that is always executed on both failure and success. LoadingOverlay.stop(); }) これはかなり一般的な問題だと思うので、できると思っていましたが、ドキュメントに何も見つかりませんでした。それができるかどうか何か考えはありますか?

7
Javaでは、キーワード「final」、「finally」、「finalize」はどのような目的で使用されますか?[閉まっている]
クローズ。この質問はもっと焦点を合わせる必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てるようにします。 10か月前に閉鎖されました。 この質問を改善する Javaでは、どのような目的は、キーワードを行いfinal、finallyそしてfinalize満たしますか?
82 java  final  finally  finalize 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.