見出し画像

pythonじゃんけん勇者の旅.Lv4-importと処理の終了-

じゃんけんプログラムを少しづつ改良してPythonのレベルアップを目指すnote.Lv4

前回のあらすじ

・if文
・「=」と「==」の違い

↓マガジン一覧はこちら↓


今回の完成イメージ

ifの条件分岐に対して、printを返すだけでしたが、明示的に処理を終了してみましょう。「じゃんけんをしますか?」の問いに対して「はい」を選んだ場合は、じゃんけんが開始されるのでじゃんけん開始の処理を書きますが、「いいえ」の場合は終了の処理を書かなければなりません。先に書いてしまいましょう。

今回の学習内容

・importとは
・モジュールとメソッド
・明示的な処理の終了

importとは

pythonでは、基本的な構文(print,ifなど)の他の関数(処理)についてはimportを使ってモジュールを読み込みます。

モジュールとは

モジュールとは、日本語で言えば「部品」です。プログラムは沢山の部品を使って長い処理を実行します。部品=関数の塊=処理の塊のことです。ExcelやGoogleスプレットシートの関数は使ったことがありますか?ExcelやGoogleスプレットシートでいうところの関数は「SUM」などです。皆がよく使う処理(数式の塊)を関数としてすでに用意しているのです。


Pythonにも関数がありますが、使うときには「この関数使いますよー」という宣言のするように「import ライブラリ名」と書く必要があります。今回は「sys」というPythonの標準ライブラリのモジュール利用したいので「import sys」と冒頭に宣言を書きます。

では実際のコードでイメージをつかんでみましょう

import sys
sys.exit()

モジュール「sys」を読み込んで、モジュールsysのメソッド(関数)である「exit」を呼び出しています。

え?分かりにくいって?!
あなたはファンタジーの世界の勇者です。魔法を使えるとしましょう。例えるならば「炎の聖霊よ…我に力を貸したまえ…ファイア!」でしょうか。炎の聖霊を呼び出してから、炎の聖霊の技であるファイアを呼び出しています。

魔法を発動するために、前準備として「import sys」を唱え、sysの技の一つでである魔法「exit()」を唱えたのです。sysにはexit()だけでなく、他にも技を持っています。
詳しくは公式リファレンスを見てね!
https://docs.python.org/ja/3/library/sys.html

実行

1.下記のコードを「yuusya_lv4.py」として保存

import sys
print('じゃんけんはじめる?')
txt = input(r'入力してね!{はい:y,いいえ:n}:')
if txt == 'y':
    print('はいを選んだね!じゃんけんをはじめよう')
elif txt == 'n':
    print('いいえを選んだね!終了するね')
    sys.exit()
else:
    print('yとn以外を入力したね!終了するね')
    sys.exit()


2.pythonの実行


ターミナルから「yuusya_lv4.py」が保存されているディレクトリに移動し「yuusya_lv4.py」を実行。すると下記のように表示されます。

じゃんけんはじめる?
数字を入力してね!{はい:y,いいえ:n}:

ターミナルに何かを入力します
「y」の場合:はいを選んだね!じゃんけんをはじめよう
「n」の場合:いいえを選んだね!終了するね
その他の場合:yとn以外を入力したね!終了するね'

lv3と実行結果は変わりませんが、lv4の場合は明示的に処理を終了しています。

おさらい

・importをしてオブジェクト(処理の塊)を読み込む
・オブジェクトのメソッド(関数)を実行する
・明示的な処理終了をする

次回予告

defを使った関数化

参考サイト

Pythonでプログラムを終了させる:sys.exit()


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