こんにちわ!この記事はPythonの初学者のための内容となっております。
今回は「Boolean」型についての記述です。
- 「Boolean」ってなんだ!?
- 「Boolean」の使い方がいまいちわからない
- いろいろな型について知りたい
という方向けの内容です。
また、型については他の記事でも記述していますので参考にしてみてください。
それでは頑張っていこう!
「Boolean」とは?
「Boolean」とは、「True」と「False」の2値をとるデータ型です。
「Boolean」は、「ブーリアン」と読みます。
ブーリアン型には、様々な呼び方があり、「ブール型」や、「論理型」とも呼ばれます。
とにかく、「Boolean」型は「True」と「False」の2値をとると理解していただければOKです!
ちなみに、他に「型」といれば、「int」型や「string」型などがありましたね!
「Boolean」の使い方
論理値の代入と型確認
「Boolean」型の変数に「True」や「False」を代入してみます。
また、型の確認を行うための「Type」関数も用いて出力結果を見ていきましょう。
1 2 3 4 5 6 7 8 |
a = True print(a) # True print(type(a)) # <class 'bool'> |
出力結果から、変数「a」の型は「bool」型であることが分かりました。
「bool」型の面白いところは、「int」型の派生だということです。
次のコードを見てください。
1 2 3 4 5 6 7 8 9 10 |
a = True a = a + a print(a) # 2 print(type(a)) # <class 'int'> |
6行目の出力結果が「2」になっています。
つまり、変数「a」の「True」が「1」として計算されているため、「True + True = 2」になっています。
この辺は、公式のドキュメントを見ていただけたらと思います。
組み込み関数 – issubclass() — Python 3.7.1rc2 ドキュメント
「bool」型が「int」型の派生だということが分かったので、このような使い方もできます。
こうしてみると意外と便利かもと思います。
1 2 3 4 5 |
a = [True, True, False, True, False] print(sum(a)) # 3 |
この手法は、ある条件を満たしている個数を数えるときなんかに使えそうですね!
条件式の利用
条件式とは、「if」や「elif」、「else」を使った論理演算子のことを言います。
この条件式については過去の記事で詳しく記述しているのでそちらも参考にしていただけたらと思います。
今回は「Boolean」がメインテーマですので、条件式との組み合わせも、より論理型を意識したコードを紹介していきます。といいつつも、「while」文と組み合わせて使ってみました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
def Enter(): # 数字を入力 x = int(input()) if x == 1: return True else: return False # メイン関数 if __name__ == "__main__": print("'1'を押すと継続、それ以外で終了します。") while Enter(): print("継続されました。") print("終了しました。") """ '1'を押すと継続、それ以外で終了します。 1 継続されました。 1 継続されました。 1 継続されました。 2 終了しました。 """ |
ここからは解説です。
関数「Enter」で「Boolean」型である、「True」か「False」のいずれかを返すようになっています。「main」関数で、「Enter」関数から受け取った返り値によって、「while」文が継続するか終了するかを決定するようなプログラムになっています。
今回、数字の「1」以外を入力すると、処理が終わるようになっていますので、実際にプログラムを動かしてみると、面白いです!といいたいところですが、まったく面白くありません。笑
ここで理解しておきたいのは、「if」文や「while」文などの条件式に使う条件は、「Boolean」型の場合、
1 |
if (条件): |
の1行でかけることを知っておきたいですね。次の例のように書いてしまうとわかりずらくなってしまいます。
1 2 3 4 |
a = True if a == True: (処理) |
「こんなことしないよ!」と思うかもしれませんが、初めてプログラミングを学ぶ学生はこのようなミスも案外多いものですよ。
無料で、初心者から学べるプログラミング教室として、オススメしている「ゼロから始めるPythonプログラミング入門講座」というものがあります。お話しだけでも聞いてみる価値がありますのでぜひとも参加してみてください。
詳しい内容はこちらの記事です。
まとめ
今回は、「Boolean」型についての内容でした。
「Boolean」型は「True」と「False」の2値をとり、条件式と組み合わせて使うと便利だということが分かっていただけたと思います。
また、この「Boolean」は実は「int」型の派生なので、「True」が「1」を、「False」が「0」を表すことも豆知識として知れたのではないでしょうか?こういった裏のことも知れると面白いなと思いますよね!
本日の理解度調査
今日の最後に理解度調査をします!!
どうすれば正しくなるのか考えてみてね!!
Q.関数「judge」が出力結果とつじつまが合うように条件式を完成させよ。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# ランダムモジュールをインポート import random def judge(): # 0~9までの任意の数字を選ぶ x = random.randint(0, 10) if ???:#ここはどうなるかな return True else: return False if judge(): print("選ばれた数字は0~4です。") else: print("選ばれた数字は5~9です。") """ 例1:x = 1の時 選ばれた数字は0~4です。 例2:x = 8の時 選ばれた数字は5~9です。 """ |
正解は。。。
1 2 3 4 5 |
if x < 5: return True else: return False |
わかったかな??正解出来たら今回の項目は完璧だね!!
最後まで記事を読んでいただきありがとうございます!
昔、自分が参考にしていたプログラミングについての書籍を紹介します。
非常にわかりやすい内容で、言語は「Java」ですが参考にしてみてください!
「Python」じゃないんかい!
プログラミングスクールに関しては下の記事で詳しく記述しています。
こちらで紹介しているスクールは、すべて無料期間がある優良なスクールのみで、特徴を明確にし、読者のニーズに絞って丁寧に解説しました。初めての一歩として、無料説明会に参加してみてください。