LoginSignup
0
0

More than 3 years have passed since last update.

【Udemy Python3入門+応用】 50. 位置引数とキーワード引数とデフォルト引数

Posted at

※この記事はUdemyの
現役シリコンバレーエンジニアが教えるPython3入門+応用+アメリカのシリコンバレー流コードスタイル
の講座を受講した上での、自分用の授業ノートです。
講師の酒井潤さんから許可をいただいた上で公開しています。

■位置引数

positional_argument
def menu(food, drink, dessert):
    print('food =', food)
    print('drink =', drink)
    print('dessert = ', dessert)

menu('beef', 'wine', 'ice cream')
result
food = beef
drink = wine
dessert =  ice cream

今回はきちんと入力されているが、
drinkice cream
dessertwineとあえて間違えみる。

argument
def menu(food, drink, dessert):
    print('food =', food)
    print('drink =', drink)
    print('dessert =', dessert)

menu('beef', 'ice cream', 'wine')
result
food = beef
drink = ice cream
dessert = wine

このような間違いを防ぎたい。

■キーワード引数

keyword_argument
def menu(food, drink, dessert):
    print('food =', food)
    print('drink =', drink)
    print('dessert =', dessert)

menu(food='beef', dessert='ice cream', drink='wine')
result
food = beef
drink = wine
dessert = ice cream

キーワード引数を設定したことで、順番どおりに書かなくてもきちんとprintされた。

■デフォルト引数

default_argument
def menu(food='beef', drink='wine', dessert='ice cream'):
    print('food =', food)
    print('drink =', drink)
    print('dessert =', dessert)

menu()
result
food = beef
drink = wine
dessert = ice cream

デフォルト引数を設定した上で、引数を何も渡さないと
設定したデフォルト引数が返ってくる。

default_argument
def menu(food='beef', drink='wine', dessert='ice cream'):
    print('food =', food)
    print('drink =', drink)
    print('dessert =', dessert)

menu(food='chicken', drink='orange juice')
result
food = chicken
drink = orange juice
dessert = ice cream

デフォルト引数を設定した上で、
デフォルト引数から変更したいものだけキーワード引数を渡してやると、
その部分だけ変更されて返ってくる。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0