⊗pyPmExcFu 82 of 129 menu

Pythonにおける例外を投げる関数

例外は、条件を使って関数内に記述して投げると非常に便利です。

リストの長さが 3 以下の場合にのみリスト要素の合計を返し、それ以外の場合は独自の例外 ToBigLength を投げる関数 get_sum を作成しましょう。

def get_sum(lst): if len(lst) <= 3: return sum(lst) else: raise ToBigLength

次に、関数 get_sum にリストを渡し、結果をコンソールに出力してみましょう。

lst = [1, 2, 3, 4] print(get_sum(lst)) # 6 を出力します

関数内では、複数のタイプの例外をキャッチするように設定することもできます。 もう一つ例外クラス ToSmallLength を作成しましょう。

class ToSmallLength(Exception): pass

ここで、関数内に条件を記述します。リストの長さがゼロの場合は ToSmallLength を投げ、どの例外にも該当しない場合はリストの全要素の合計を返すようにします。

def get_sum(lst): if len(lst) > 3: raise ToBigLength if len(lst) == 0: raise ToSmallLength else: return sum(lst)

便利のために、関数のパラメータとして渡されるリスト、関数自体、そしてその呼び出しを try ブロックで囲むことができます。 作成した2つの例外のキャッチは except ブロックに配置します。

try: lst = [1, 2, 3] res = get_sum(lst) print(res) except ToBigLength: print('error 1') except ToSmallLength: print('error 2')

数値をパラメータとして受け取る関数を作成してください。 関数内に、数値が負の場合とゼロに等しい場合にそれぞれ対応する例外を投げる条件を記述してください。 それ以外の場合は、数値に 3 を乗算するようにしてください。

try-except 構文を使って、作成した関数の動作を確認してください。 その際、作成した例外もキャッチしてください。

日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否