October 2025
Intermediate to advanced
572 pages
7h 46m
Japanese
Pythonにおいて、プログラマが最初に使う道具は関数です。他のプログラミング言語と同様に、関数を使えば、巨大なプログラムを目的を表す名前を持つ小さくかつシンプルなコンポーネントに分割できます。プログラムを分割すれば、コードの可読性が向上して、コードが扱いやすくなります。また、コードの再利用やリファクタリングも可能になります。
Pythonの関数には、プログラマにとって便利な機能がたくさんあります。便利な機能の中には、他のプログラミング言語にも類似するものが存在しますが、大半はPython特有の機能です。この機能をうまく活用すれば、関数のインタフェースが明確になり、可読性や関数呼び出し側の使い勝手が向上します。また、検出が難しい微妙なバグを大幅に削減できます。
Pythonはポインタ型をサポートしていません([項目95]参照)。ただし、関数に渡される引数はすべて参照渡しです。整数や文字列のようなシンプルな型はイミュータブルオブジェクトなので値渡しのように見えます。しかし、より複雑なオブジェクトは呼び出し側の意図に関係なく、他の関数に渡された際に変更される可能性があります。
例えば、リストを関数の引数として渡すと、関数は引数であるリストのメソッドを呼び出せます。
def my_func(items):
items.append(4)
x = [1, 2, 3]
my_func(x)
print(x) # [1, 2, 3, 4]
この場合、C言語のポインタ型のように、呼び出された関数内で変数xの値を置き換えることはできません。しかし、xに代入されたリストを変更することは可能です。
同様に、変数bに別の変数
Read now
Unlock full access