Python
 Computer >> コンピューター >  >> プログラミング >> Python

すべてのPython例外をキャッチするtry/exceptブロックを作成するにはどうすればよいですか?


以下のようなコードを使用してすべての例外をキャッチすることはできますが、次のことを行うべきではないというのが一般的な経験則です。

try:
    #do_something()
except:
    print "Exception Caught!"

ただし、これは、関心のないKeyboardInterruptなどの例外もキャッチします。例外をすぐに再発生させない限り、例外をキャッチすることはできません:

try:
    f = open('file.txt')
    s = f.readline()
    i = int(s.strip())
except IOError as (errno, strerror):
    print "I/O error({0}): {1}".format(errno, strerror)
except ValueError:
    print "Could not convert data to an integer."
except:
    print "Unexpected error:", sys.exc_info()[0]
    raise

file.txtがスクリプトと同じフォルダにない場合は、次のような出力が得られます。

I/O error(2): No such file or directory

  1. Python –文字列からすべての数字を抽出する方法

    数字で文字列を抽出する必要がある場合は、リスト内包表記と「isdigit」メソッドが使用されます。 例 以下は同じのデモンストレーションです- my_string = "python is 12 fun 2 learn" print("The string is : ") print(my_string) my_result = [int(i) for i in my_string.split() if i.isdigit()] print("The numbers list is :") print(my_result) 出

  2. Pythonでパターンを印刷する方法は?

    Pythonのパターンは、ネストされたforループを使用して印刷できます。外側のループは行数を反復処理するために使用され、内側のループは列数を処理するために使用されます。印刷ステートメントは、要件に応じてさまざまなパターンを形成するように変更されます。 パターンには、星型、数字型、アルファベット型があります。パターンは、さまざまな形、三角形、ピラミッドなどにすることができます。 例 これらのパターンはすべて、これらの異なるパターンを形成する変更されたprintステートメントを含むforループを使用して印刷できます。 これらのパターンの印刷の基本的な考え方は同じですが、わずかな違いが