今回はPythonとはそもそもなんだというPythonの概念的な意味の説明と一番の初歩であるpass文について解説します。
pass文とは、「何も行わない」という動作をする命令のことです。
この記事では、
・Pythonの意味
・pass文とは
・pass文を使う意味
と言った内容から、
・pass文を使った例
を通して、一見すると使いみちがよくわからないpass文についてやPythonそもそもの意味についてわかりやすく解説します!
※ この記事のコードはPython 3.7, Ubuntu 18.04で動作確認しました。
なお、Pythonの記事については、こちらにまとめています。
そもそもPythonの意味とは?
みなさんがよく耳にするPythonですが、そもそもPythonとは何なのでしょうか?
正直言ってPythonと聞いてもプログラミング言語の一つ、くらいの認識の人は多いと思います。
なので今日はPythonとはどういう意味なのか、どういう性質を持っているのかを簡単に説明します。
Pythonとは知っている通り動的なプログラミング言語なのですが、最大の特徴はなんといってもインデントで文法を管理するため、誰が書いても綺麗で似たようなコードになるということです。
それはつまり、初学者には学びやすい上に共同で開発を行うときにとても行いやすいということでグーグルやインスタグラムなどでも使用されています。
簡単で読みやすいのですが、機能が劣っているなどということではなく様々なライブラリや、モジュールも準備されています。
そして、Pythonという名前はイギリスのお笑い番組空飛ぶモンティ・パイソンにちなんでつけられたらしくパイソンは和訳すると、ニシキヘビらしいですね。
詳しくPythonで何ができるのか、どういう言語なのかということは以下で説明しているので勉強を始める前に一度目を通しておくと全体を捉えやすいかなと思います。
pass文とは
pass文は、「何も行わない」という動作の命令です。
こちらのサンプルコードを見てみましょう。
def func(): pass
これで、func関数という何もしない関数が出来上がりました。
このように書く意味がわからないかもしれませんが、しっかりとした使いみちがあります。
pass文は
- 関数名、クラス名は決まったけども実装ができていない時
- 例外、分岐の際に何も動作を行わない時
によく使われます。
pass文を使う意味をもう少し詳しく見ていきましょう。
pass文を使う意味
pass文を使う場所はわかったと思います。
しかし、なぜpass文を使う意味があるのでしょうか。
それはPythonは文法上、必ず文を書かなければならない場所があるからです。
先程の関数のサンプルコードを例に見てみましょう。
#pass文があるのでエラーが起きない def func(): pass #pass文が無いのでエラーが起きる def func():
これを、もしpass文を書かずに実行してみると、エラーが発生(SyntaxError: unexpected EOF while parsing)してしまいます。
これは先程説明したように文法上の理由で必ずコードを書かなければならない場所だからです。
また、pass文を書くことによって「この関数は何もしない」ということを明示的に(はっきりと)書き記すことが出来ます。
これによってプログラムが読みやすくなるというメリットもあります。
pass文を使った例
先程は例として、関数を利用したpass文の使い方を紹介しました。
この章ではif文などの分岐をpass文と一緒に使う方法を解説していきます。
こちらのサンプルコードを見てみましょう。
for i in range(10): if i % 3 == 0: print(i) else: pass
range関数でfor文を10回、回しています。
range関数についてはこちらの記事に詳しく解説されているのでぜひご覧ください。
iを3で割ったときのあまりが0の時(3の倍数の時)、その数iを表示します。
しかし、それ以外の時はelse文でpass文につながります。
実行結果
0 3 6 9
結果からも分かる通り、else文からpass文に繋がったときの動作は何もないように見えます。
またelseとpass文を書かなくてもこのプログラムは正常に終了します。
しかし、pass文を書くことによってプログラムの終わりが明示的になって読みやすくなりましたね。
関数やクラスでpass文を使った例
前の章ではif文とpass文を組み合わせて使う方法を解説しました。
一番最初のサンプルコードのように、関数やクラスにもpass文を使うことが出来ます。
クラスについて分からない方は、こちらの記事をご覧ください。
実際のサンプルコードを見てみましょう。
#関数とpass文を使った例 def myFunc(): pass #クラスとpass文を使った例 class myClass(): pass
とても簡単ですね。
関数やクラスの名前は決まっているけど機能が出来ていない場合は、このようにpass文を使うことで読みやすいコードを書くことが出来ます。
ただし、何もしないクラスや関数を実際に使う場面では、NotImplementedErrorやNotImplementedという特殊な例外を組み込みましょう。
まとめ
この記事ではPythonのpass文の使い方について解説しました。
処理の流れは決まっているけど、実装ができていないときにpass文は非常に役立ちます。
また例外処理をpass文ではっきりと書くことによって、分岐が目に見えてわかりやすくなります。
乱用しすぎるのも良くないですが、pass文を使いこなすことでコーディングの見通しが立てやすくなったり、コードの読みやすさが増したりします。
pass文は単体では使うことが出来ませんが、関連する記事を読んで学習してみてください!