Pythonでは、関数の引数に配列を渡す方法がいくつかあります。その中でも、参照渡しと値渡しの2つの方法が主に使われます。
参照渡し
Pythonの関数に配列を渡すとき、デフォルトでは参照渡しになります。これは、関数内で配列の要素を変更すると、元の配列も変更されることを意味します。
def hoge(arr):
arr[0] += 1
arr_ref = [0, 1]
hoge(arr_ref)
print(arr_ref) # 出力結果: [1, 1]
値渡し
一方、配列の後に [:]
を付けると、値渡しになります。これは、関数内で配列の要素を変更しても、元の配列は変更されないことを意味します。
def hoge(arr):
arr[0] += 1
arr_val = [0, 1]
hoge(arr_val[:])
print(arr_val) # 出力結果: [0, 1]
このように、Pythonでは関数に配列を渡す方法がいくつかあり、それぞれの方法が異なる挙動を示します。適切な方法を選択することで、コードの挙動を制御することができます。