-2

「try」ステートメントと「if」ステートメントの間にPythonの機能上の違いはありますか?

4

4 に答える 4

7

Pythonのガイドラインとして引用されることがある「許可よりも許しを求める方が簡単」というパラダイムについて質問していると思います。

この文脈では、許可を求めtry / exceptてから試すことに対応しながら、試して許しをif求めることに対応します。

ご覧ください: http://docs.python.org/glossary.html#term-eafp

于 2012-07-02T14:30:15.910 に答える
5

ドキュメントを見ると、tryは例外用、ifは条件分岐用です。

于 2012-07-02T14:27:49.947 に答える
2

if ステートメントは、このようなコードの流れを制御するためのものです

a=1

if a ==0 :
    print "zero"
if a==1 :
    print "one"

ただし、tryステートメントは制御用であり、エラーが発生する可能性があります。ファイルを開きたいのに、このファイルが存在しない場合は、次のように記述します。

try:
    open ('file.txt','r')
except:
    print "this file dont exists"

このコードでは、プログラムはクラッシュしません

于 2012-07-02T14:34:41.553 に答える
2

1 つはエラー状態に基づいて分岐し、もう 1 つは真理値の比較に基づいて分岐します。確かに、条件がブロックの最初の部分にあるときにエラーを発生させたい場合は、 - ブロックの代わりにtry-ブロックを使用できますが、それはばかげています。exceptifelseFalsetry

于 2012-07-02T14:29:10.273 に答える