Pythonでは、関数に複数の引数を渡すことが可能です。また、関数から複数の値を返すこともできます。これらの特性を理解し、適切に活用することで、より効率的なコードを書くことができます。
複数の引数を関数に渡す
Pythonの関数には、複数の引数を渡すことができます。引数はコンマ(,
)で区切って定義します。ただし、引数の順番は、対応する仮引数の順番と同じにしなければなりません。
def func(a, b, c):
print(a, b, c)
func(1, 2, 3) # 1 2 3
関数から複数の値を返す
Pythonの関数は、複数の値を(タプルにまとめて)返すことが可能です。これを行うには、return
文で返したい値をカンマ「,」で区切って並べます。並べられた値はタプルを構成する要素となり、タプルが関数の戻り値となります。
def func():
return 1, 2, 3
a, b, c = func() # a=1, b=2, c=3
複数の関数で状態を共有する
プログラミングをしていると、「複数の関数で状態を共有」したくなることがよくあります。このとき、何も考えずにグローバル変数を使ったり、ポインタをバケツリレーしたりするよりも、いろんな解法からベストを選べた方がよい。
class State:
def __init__(self):
self.state = 0
def increment(self):
self.state += 1
return self.state
s = State()
print(s.increment()) # 1
print(s.increment()) # 2
これらのテクニックを活用することで、Pythonでの関数の扱いがより柔軟になり、効率的なコードを書くことができます。.