libro
www.tuyano.com
初心者のためのPython入門

関数をマスターしよう (4/5)

作成:2011-01-24 10:01
更新:2017-06-03 14:11

■キーワード引数

関数を構成する要素の中で、意外に多機能なのが「引数」です。これは、普通に値を渡す他にいろいろとオプションを持っています。
  
まず、「キーワード引数」というもの。これは、引数にキーワード(名前)をつけて使えるようにする機能です。どういうことかというと、こういうこと。
  
※関数の定義(3)
 def 関数 ( キー1=初期値1 , キー2=初期値2 , ……): 

キー初期値を指定するのです。これにより、キーを使って引数を指定できるようになります。普通、引数は順番が決まっているんですが、キーを使うことで、順番に関係なく値を記述できます。
  
また、初期値を設定できるため、値を省略することができるようになります(省略すると初期値が使われる)。普通、引数というのは必ず値を渡さないといけないのですが、キーワード引数にすれば、オプション扱い(なくてもOK)の引数が作れます。
  
では、実際の利用例を見てみましょう。下のリスト欄にサンプルを掲載しておきます。
  
ここでは、3通りの引数の指定をしてshowMsgを呼び出しています。showMsg("Taro")というように、第1引数に名前を指定するだけでもちゃんと動きますし、第2第3引数を用意しても動きます。
  
また、キーワードはつけてもつけなくても動きます。ただし、キーワードを付けない場合は、引数は定義された順番通りに指定しないといけません。キーワードを付けて引数を書く場合は、どんな順番でもOKです。
  
ここでは、キーワードなしの引数とありの引数が混在していますが、このような場合は、かならず「キーワードなしの引数」を先に定義し、キーワード引数はその後に定義して下さい。キーワード引数の後にキーワードなしの引数を用意すると文法エラーになります。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

●プログラム・リスト●

 def showMsg(name, header='Hello', footer='How are you?'): 
     print(header + "," + name + ". " + footer) 
   
 showMsg("Taro") 
 showMsg("花子",'こんにちは','お元気ですか。') 
 showMsg("幸子",footer='どもども',header='やっほ') 

※関連コンテンツ

「初心者のためのPython入門」に戻る