3章関数
プログラマがPythonで最初に使うプログラム構成ツールは関数でしょう。他のプログラミング言語と同様、関数は大規模プログラムをより小さく単純な部品に分割します。関数は可読性を高め、コードを扱いやすくし、再利用とリファクタリングを促します。
Pythonの関数は、プログラマが楽になるようなさまざまな特別な機能を持っています。他のプログラミング言語の関数と同じような機能もありますが、多くはPython特有のものです。これらの機能は、関数の目的を一層明白にします。雑音的なものを省いて呼び出し元の意図を明確にします。特定しにくいバグを大幅に減らすことができます。
項目19 複数の戻り値では、4個以上の変数なら決してアンパックしない
アンパック構文(「項目6 インデックスではなく複数代入アンパックを使う」参照)の効果の1つは、Python関数が複数の値を返せることです。例えば、ワニの生息数についてさまざまな統計量を求めたいとします。体長のリストがあるので、母集団での最大と最小を計算します。2つの値を返す関数1つで行います。
def get_stats(numbers): minimum = min(numbers) maximum = max(numbers) return minimum, maximum lengths = [63, 73, 72, 60, 67, 66, 71, 61, 72, 70] minimum, maximum = get_stats(lengths) # 2つの戻り値 print(f'Min: {minimum}, Max: {maximum}') >>> Min: 60, Max: 73
この動作は、2要素タプルで複数の値が一緒に返されるものです。呼び出し側のコードが返されたタプルをアンパックして2変数に代入します。さらに簡単な例を使って、アンパック文と複数戻り値関数が同じように動作することを示します。 ...
Get Effective Python 第2版 ―Pythonプログラムを改良する90項目 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.