ここで､ 別の例で試してみましょう｡
例えば､ 簡単な和の関数を作るとします｡
はい､ Pythonにすでに存在することは知っていますが､ 私たちは自分たちで作ることにします｡
1番と2番を取るシンプルなもの｡
そしてここでは､ 1番と2番を足したものを返すだけです｡
今､ 単純にあるものをやるとしたら｡
そして､ ある人も｡
そして､ 私たちのプログラムを運営しました｡
では､ まずプリントアウトしてみましょう｡
実行をクリックする｡
1と2が出るのは､ 2つの文字列を足すだけだからです｡
では､ このまま実行をクリックしましょう｡
型エラーはintではなくstringでなければなりません｡
では､ 学んだことを踏まえて､ どのように対処すればいいのか｡
さて､ ここにtriブロックを追加して､ この関数をラップすることができます｡
あるいは､ 関数に直接組み込むこともできます｡
だからトライと言えるのです｡
この部分です｡
そして､ ここには出口条項があります｡
それは､ おそらく何らかのエラーが発生した場合ということです｡
印刷します｡
何かが間違っている｡
これを実行すると
何かがおかしいと感じる｡
しかし､ ここで問題が発生します｡
例外なく､ ただ受け入れることで
プログラマーとしてこれを読んでいると､ いろいろなことが考えられるので､ 実際に何が悪かったのかよくわからない｡
そのため､ これらのエラーは必ず特定の例外に基づいてキャッチするのが良い方法です｡
こうすることで､ エラーの内容がわかり､ より説明的な表現が可能になります｡
つまり､ ここではタイプエラーと言い､ このタイプエラーでは数字を入力してくださいと言うだけでよいのです｡
もう一度実行したときに､ 数字を入力していただけるように｡
だから今
わかりました｡
私のエラーはもっと説明的なものです｡
これを直して､ 数字を入力するようにしないといけないですね｡
すごい｡
さて､ エラー処理を行う際の一般的なパターンは､ このタイプエラーのようなことを行ってから､ 変数のようなことを行うことです｡
ですから､ 私たちの場合､ どんな変数でもいいのですが､ ここではerrorとしましょう｡
だから､ もしタイプエラーをキャッチしたら､ エラーメッセージにerrorを使って､ ここでこう言えるようにしよう､ と言っているんです｡
プラスエアー｡
だから､ もし私が走ったら､ ここで文字列をやってみましょう｡
あれを見てください｡
エラーが印刷されるのですが｡
ちょっと開けてみて､ クリアに見えるようにします｡
あれを見てください｡
実際､ 私が望むような空気を与えてくれます｡
それをネットで見られるように｡
5つです｡
この行では､ タイプエラーunsupported operantが発生し､ 何が起こっているのか説明的なエラーが発生するので､
出力メッセージに使えるかもしれませんね｡
でも､ これを使わず､ 走る場合はどうするのでしょうか？
わかりました｡
すべてが再び動き出しました｡
そうすれば
プラス
ここで､ 「実行」をクリックします｡
そして､ これは実は厄介なのですが､ 上記の例外の処理中にここに書いてあるのです｡
また､ 例外が発生した｡
まいったなぁ｡
何かを処理しようとすると､ そのエラーの中でエラーが発生しました｡
だから､ これは時に厄介なんです｡
しかし､ ここで得られるのは､ 実際にはエラーオブジェクトであることを意味します｡
Pythonに内蔵されている例外です｡
私のようにここに追加することはできません｡
その代わり､ Fの文字列を使いたい｡
そこで､ fを実行し､ ここでエラーを渡します｡
だから､ 今はそのように｡
これを実行すると
もう一度｡
番号を入力してください｡
サポートされていないオペランド型の4つにintとstrを加えたものです｡
で､ 実際にこのエラーが用意されているんです｡
では､ このエラーだけをプリントするとしたら､ どのようなものになるか見てみましょう｡
実行」をクリックすると
ほら､ この部分が空気になるんですよ｡
ですから､ ユーザーに意味のあるエラーを出したい場合には､ 非常に有効です｡
もう一つ面白いのは､ このようなエラーをまとめて表示することです｡
そこで､ 除算誤差もゼロにしたとします｡
そしてここでは､ おっとと言うしかない｡
例えば､ num1をnum2で割るとしたら､ まずこれを実行してみましょう｡
1を0で割ってこれを実行すると､ おっとっととなる｡
また､ 複数のエラーを同じように処理できるよう､ フープを取得しています｡
また､ ここでas airと言えば､ 実際に空気をプリントアウトして､ これを実行すればいいのです｡
ゼロ除算とか､ 文字列をやると出てくる｡
そして､ これを実行する｡
もう一つのエラーの種類が表示される｡
ですから､ これもまた､ 異なるエラーを同じように処理したい場合に､ 組み合わせるのにとても便利です｡
しかし､ 実際に自分たちでエラーを起こしたいと思ったらどうでしょう？
つまり､ このacceptブロックの内部で､ もしかしたら自分自身のエラーを投げたいのです｡
実は､ ある種のエラーに対して表示させたいのです｡
どうしたらそんなことができるのだろう｡
次の動画で確かめてみましょう｡