ray88’s diary

お仕事で困ったとき用の自分用の覚書

Python 引数の受け取り方① 位置引数・キーワード引数・初期値あり引数

python 目次 - ray88’s diary
各種目次 - ray88’s diary
■位置引数:関数で定義された引数の並びに合わせて順番に値を与える

def price(adult,child):
    return(adult * 1200) + (child * 500)

result = price(1,2) #大人1人,子供2人
print(f"料金は{result}円")

出力結果

■キーワード引数:引数名で指定して値を与える(順番が間違っていてもOK)

def price(adult,child):
    return(adult * 1200) + (child * 500)

result = price(child=2,adult=1) #順番が間違っていてもキーワードで指定しているからOK
print(f"料金は{result}円")

出力結果

■初期値のある引数
 引数に初期値を設定すると引数の値を省略したときに初期値が割り当てられる。
 ※複数引数がある場合は省略できるのは後ろからで途中の引数を省略することはできない。
 以下の例では def calc(quantity=2,size="M") のように個数とサイズに両方初期値を設定している。calc()のように両方初期値を省略したり、calc(3)のように2番目の引数(サイズ)を省略することもできるが、calc(,"L")のように前にある引数を省略して後ろの引数に値を渡すことはできない。この場合にはcalu(size="L")のよゆにキーワード引数を利用することで個数を省略し、サイズのみ指定することができる

def calc(quantity=2,size="M"):
    unit_price = {"S":120,"M":150,"L":180}
    price =unit_price[size] * quantity
    return quantity,size,price
#使用例
a = calc() #個数、サイズ共に省略
print(f"{a[1]}サイズ,{a[0]}個,{a[2]}円")

b = calc(3) #サイズを省略
print(f"{b[1]}サイズ,{b[0]}個,{b[2]}円")

c = calc(size = "L") #キーワード引数を利用してサイズのみ指定する
print(f"{c[1]}サイズ,{c[0]}個,{c[2]}円")

出力結果