見出し画像

Python学習: Day 30‐例外について

2024年3月末までの目標🌕!

- Udemyの100 Days of Codeを完了
- おまけに欲張ってCISSP資格を取得し、Cyber Security分野に転向


私の使ってる学習素材です📚。アンジェラねーさんには足向けて寝れませんッ。

今日のPlaylist:

写真にあるLipstick Keyboardが今日Amazonから到着。カチカチとタイプライターのように音をたてながらPython している。最近、プロジェクトのGo-liveを控えてストレスいっぱいなので、このキーボードで気分を盛り上げて明るく(?)乗り越えようと思い、思い切って買ってみた。今年は還暦だから赤色の買い物にハマりそうだわ。

こんなキーボード使ってるなんてみんな知らない(笑)。

Day30
try-exceptの使い方。
例外が生じたエラー箇所で、その場合はこーしろあーしろと指示しておけばエラーのまま残らず済むってゆーやつ。


try:
    file = open("a_file.txt")
except:
    file = open("a_file.txt", "w")
    file.write("something")

これは、存在しないa_fileを開けと言って、
なければ記述できるようにfileを作成し、somethingと記入しろと言っている。

でもexceptのみを使うのはよくない。
以下のようなコードだとエラーが出ない。

try:
    file = open("a_file.txt")
    a_dictionary = {"key": "value"}
    print(a_dictionary["wqeoiuf"])
except:
    file = open("a_file.txt", "w")
    file.write("something")
print(a_dictionary["wqeoiuf"])
これはエラーになるけど、

except:
    file = open("a_file.txt", "w")
    file.write("something")
これは続行するのでファイルを作ってsomethingと記入することになる。

今度はexcept FileNotFoundError:を使ってみると、dictionaryにないKeyをprint出来ない、というエラーが発生。


try:
    file = open("a_file.txt")
    a_dictionary = {"key": "value"}
    print(a_dictionary["wqeoiuf"])
except FileNotFoundError:
    file = open("a_file.txt", "w")
    file.write("something")



KeyError: 'wqeoiuf'
エラーが発生する。

KeyErrorの時は表示が出るようにする。
except KeyError as error_message:

try:
    file = open("a_file.txt")
    a_dictionary = {"key": "value"}
    print(a_dictionary["wqeoiufk"])
except FileNotFoundError:
    file = open("a_file.txt", "w")
    file.write("something")
except KeyError as error_message:
    print(f"that key {error_message}doesn not exist.")


そして、下のコードはこんな意味。
ファイルがない → FileNotFoundの例外で対処
a_dictionaryのKeyを読む → これはValueを返す
   ファイルがなかったので、a_fileを開きsomethingと記入。
KeyError 
はこの場合はなし。
a_fileを読んでprintすると、somethingが上のvalueの下に書かれる。
最後にfinallyのprintで終了!

try:
    file = open("a_file.txt")
    a_dictionary = {"key": "value"}
    print(a_dictionary["key"])
except FileNotFoundError:
    file = open("a_file.txt", "w")
    file.write("something")
except KeyError as error_message:
    print(f"that key {error_message}doesn not exist.")
else:
    content = file.read()
    print(content)
finally:
    print("The program was executed.")





アウトプットはこうなる。
value
something
The program was executed.

今日はここまで。
新しいキーボードは、メカニカルなので深い!Typoばっかりで結構慣れるまでしんどいなぁ、これ!
でもキラキラなので許すわ。

光りすぎてめちゃ見にくい。どこが真ん中かよくわからん!Typoばかり。
こんなんで仕事出来るのかな?月曜にいきなり生産性が落ちたりして!

こんなゲーマーみたいなKeyboardで喜べる自分が可愛いわぁ。🤗


この記事が気に入ったらサポートをしてみませんか?