この記事では、Pythonのpass
の使い方について解説していきます。
Pythonのpassの使い方
passには、様々な使い方があります。
1. ブロック内でpassを使う
例えば、あるリストから偶数をすべて取り除く関数を書かなければならないとします。
この場合、forループを使ってリスト内の数字を走査していきます。
2で割った数であれば、何もしない。
そうでない場合は、一時的なリストに追加します。
最後に、奇数のみを含む一時的なリストを呼び出し元に返します。
Pythonは空のブロックをサポートしていません。
そこで、ここでは、if-conditionブロック内で何も処理をしない場合にpass文を使っていきます。
def remove_evens(list_numbers):
list_odds = []
for i in list_numbers:
if i % 2 == 0:
pass
else:
list_odds.append(i)
return list_odds
l_numbers = [ 1 , 2 , 3 , 4 , 5 , 6 ]
l_odds = remove_evens(l_numbers)
print(l_odds)
結果は、1 3 5
と言う表示が出ます。
上記の例では、if-conditionブロックの中で何も処理をしないためにpass文を使っています。
2. 空の関数に対するpass文
Pythonには抽象関数という概念がありません。
つまり、空の関数を定義しなければならない場合、以下の書き方はできません。
def foo():
# TODO - implement later
結果は、IndentationErrorと言うエラーが発生してしまいます。
しかし、pass文を使って空の関数を定義することができます。
def foo():
pass
関数内に複数のpassを使う
1つの関数やコードブロックの中に複数のpassを持つことができます。
なぜなら、passは関数を終了させないからです。
passの唯一の役割は、空のステートメントを提供することです。
def bar():
pass
print('bar')
pass
if True:
pass
pass
print('True')
else:
print('False')
pass
pass
上記のよ宇なコードを書いても問題なく動きます。