あい
今回は位置引数
キーワード引数
可変長位置引数
可変長キーワード引数
について紹介します
[R]※本サイトにはプロモーションが含まれています
合わせて読みたい
関数とは?
コンピュータが行う処理を1つにまとめたもの
引数とは?
関数は引数に
データを与え定義することで
関数内でそのデータを利用して
処理を進めることが出来ます
pythonでは引数の定義や
呼び出し方が色々あるので
あい
pythonでは引数の定義や
呼び出し方が色々あるので
今回は色々実装してみようと
思います
関数の引数の位置は対応している
関数呼び出しの時に格納される引数と
関数の引数の位置は対応しています
ハンバーガの材料を関数の引数に格納する
プログラムを実装します
ハンバーガーの材料は
バンズ、お肉、チーズ、トマト、レタス
あい
おいしそう
def humburger_material(buns, meat, tomato, chees, retus):
print(f"{buns},{meat},{tomato},{chees},{retus}")
humburger_material("バンズ", "お肉", "トマト", "チーズ", "レタス")
実行結果
あい
引数の位置が
対応してる...
引数の数は呼び出しの引数と
関数の引数は一対一の関係
でないとエラーが発生します
キーワード引数を利用して引数の位置を対応させる
関数呼び出し時に
関数の引数 = 値
とすると引数に入れたいものが
対応してくれます
def humburger_material(buns, meat, tomato, chees, retus):
print(f"{buns},{meat},{tomato},{chees},{retus}")
humburger_material(meat = "お肉", buns = "バンズ", chees = "チーズ", tomato = "トマト", retus = "レタス")
デフォルト値付き変数
関数呼び出し時
引数にデフォルトの値を
引数に設定できます
def humburger_material(buns, meat, tomato, chees = "チーズ", retus = "レタス"):
print(f"{buns},{meat},{tomato},{chees},{retus}")
humburger_material("バンズ", "お肉", "トマト")
あい
デフォルトで
cheesとretusに
文字列が
設定されてる!
可変長位置引数
引数に*をつけると
可変長の位置引数を定義できます
慣例として引数は*args
とつけることが一般的
可変長とは関数に
渡す引数の数が可変であることを示します
あい
可変長ってどういうこと!?
引数が一つの時
def func_sum(*args):
print(f"引数のクラスは{type(args)} データの中身は{args}")
total = 0
for num in args:
total += num
return total
sum = func_sum(1)
print(f"合計値は{func_sum(1)}")
出力を確認すると
*argsにタプル型で1が入っています
次に
print(f"合計値は{func_sum(1)}")
を以下のように
複数の引数に変更してみます
print(f"合計値は{func_sum(1,2,3,4,5,6,7)}")
実行結果
最初の実行で
*argsに渡している
引数は1つ次の実行で
7つ引数を渡せているので
可変長であることが確認できました
可変長キーワード引数
引数に**をつけると
可変長のキーワード引数を
作ることができます
**kwargsが一般的です
def information(**kwargs):
for key, value in kwargs.items():
print(f"{key}: {value}")
information(name="Saito", age=30, email="Saito@saito.com")
実行結果は
参考文献
あい
3.3関数の引数より