潜在的な呪いを特定する
このステップでは、Python の呪文(コード)で呪い(エラー)が発生する可能性のある場所を特定する方法を学びます。まず、時々うまくいかない単純な呪文を作成してみましょう。ポーションを小さなバイアルに分けるスクリプトを作成しますが、賢い魔法使いなら誰でも知っているように、ゼロで割ることは決してしてはいけません。
~/project内のpotion_dividing.pyという名前のファイルを開き、次のコードを追加します。
def divide_potions(total_potions, vial_count):
return total_potions / vial_count
## 10 本のポーションを 2 つのバイアルに分ける試み
print(divide_potions(10, 2))
ターミナルで次のコマンドを使用してコードを実行します。
python ~/project/potion_dividing.py
次の出力が表示されるはずです。
5.0
これはポーションの分割が成功したことを示しています。
次に、potion_dividing.pyスクリプトを変更して、危険な呪文のケースを含めます。
print(divide_potions(10, 0)) ## この呪文は危険で対処する必要があります!
次の出力が表示されるはずです。
Traceback (most recent call last):
File "/home/labex/project/potion_dividing.py", line 6, in <module>
print(divide_potions(10, 0))
File "/home/labex/project/potion_dividing.py", line 2, in divide_potions
return total_potions / vial_count
ZeroDivisionError: division by zero
改良されたスクリプトを実行すると、キャッチする必要のある呪いの例外が表示されます。この実験では、このようなケースを上手に処理する方法を学びます。