Address
304 North Cardinal St.
Dorchester Center, MA 02124
Work Hours
Monday to Friday: 7AM - 7PM
Weekend: 10AM - 5PM
Address
304 North Cardinal St.
Dorchester Center, MA 02124
Work Hours
Monday to Friday: 7AM - 7PM
Weekend: 10AM - 5PM
今回はPythonの関数の引数について、コードの解説や文法というよりはむしろ「文法用語」の解説です。
特に今回は、
について解説します。
初心者・入門レベルでは、あまり引数の種類については意識しないままプログラミングを進めることも多いと思いますが、今後プログラミングに慣れていくと引数の種類について知っておいたほうが良い場面が増えると思います。
たとえば、ネットや書籍で様々なPythonの情報を集めるとき、引数についての専門用語を知っているとその情報の理解が捗ることでしょう。
また実際にコードを書くときでも、どこでエラーになっているのか、どうすればエラーを予防できるのかを気づきやすくなると思います。
Contents
Pythonの引数には大きくわけてまず実引数と仮引数という区別があります。
まず実引数の説明からいきます。
実引数というは、関数を実際に呼び出す(使う)ときに設定される引数のことです。英語でアーギュメント(argument)と言います。以下の例を見てください。
#関数の宣言
def 関数A (number, str)
処理
#実引数を設定して関数を実行
関数A (13, 'Hello')
このように定義した関数を呼び出して使う場合に、実際に具体的な引数を設定しますよね。ここでいうと、
ですね。
このようなものを実引数と言います。
#関数の宣言
def 関数A (number, strings)
処理
#実引数を設定して関数を実行
関数A (13, 'Hello')
逆に、実引数でないものが仮引数です。これを英語でパラメーター、parameterといいます。乱暴にいってしまえば関数を定義するときに設定する引数が仮引数です。
上の例だと、
です。
仮引数は関数が受け取ることの出来る実引数の型を定義するものと考えられますね。
それではこの仮引数にはどのようなものがあるのでしょうか。次に見ていきましょう。
def 関数A(仮引数1, 仮引数2, 仮引数3,・・・・)
この点、上の仮引数1、仮引数2、仮引数3、・・・・にどのような種類の情報が設定できるかは、公式ドキュメントでは、次のように分類されています。
これら5種類です。
したがって、上の仮引数1、仮引数2、・・・のそれぞれに、これら5種類のうちのどれかを設定していくことになります。
以上のように5種類あるわけですが、それらも大雑把にわけてしまえば結局のところ、
の2種類ですので、仮引数はこれら2種類のうちどれを設定するのか、そしてどんな順番で設定するのかを考えることが重要になります。(上述:重要ポイント-引数の順番と種類)
の2種類となります。
ちなみに、引数を表す英語は、Pythonについては上述のように、
と厳密には区別されているのですが、現実上はあまり区別される全部argument(略してarg)とか書かれていることが多いので、学問として研究するとかでもないかぎり、そのあたりは気にする必要はないみたいですね。
#関数の宣言
def 関数A (仮引数1, 仮引数2, 仮引数3, ・・・・)
処理
Pythonの関数でも、上のように引数を複数設定することがありますが、実はこのときの引数を書く順番と、各引数がどのような種類のデータなのかがものすごく重要になります。
これを意識しておいてください。
なお、今回の記事では引数を書く順番とその種類に関するルールについては説明しません。また別の記事で説明する予定です。
また、今回の観点とは別の観点から引数を区別する、位置引数とキーワード引数という区別もあります。これらについは「Pythonの位置引数とキーワード引数についての初心者向け解説」で解説しましたので読んで見てください。
プログラミングを学びIT業界へ転職するなら現役エンジニアから学べるプログラミングスクールTechAcademy [テックアカデミー]でオンライン講座を受講するのが良いと思います。1人で悩みながら学習を進めるよりもわかりやすく、費やす時間も少なく合理的・効率的に学習できるからです。
など各種の講座が用意されています。無料で体験できるテックアカデミー無料体験も用意されています。