2017-03-01から1ヶ月間の記事一覧

関数内で関数を定義する

入門Python3 4.7.8 タイトル通り、関数の中で関数を定義することが出来ます。 def foo(): def bar(a): print(a + 1) bar(1) foo() $ py main.py 2 関数内で定義した関数は、関数の外では呼び出せない模様。 def foo(): def bar(a): print(a + 1) bar(1) bar(…

関数もオブジェクト

入門Python3 4.7.7 Pythonはすべてがオブジェクトなのでつまりそれは関数もオブジェクトであるってことだ。なので関数自体、関数への引数として渡したりできる。 def foo(): print("hello!") def bar(func): func() bar(foo) $ py main.py hello!fooという関…

docstringによるドキュメント定義

入門Python3 4.7.6 関数定義直後に文字列を定義することでその関数に対するドキュメントを定義することができます。定義されたドキュメントはhelp関数でを使うことで整形されたドキュメントにして出力されます。 def foo(a): 'ただ与えられた引数を表示する…

キーワード引数を辞書として受け取る

入門Python3 4.7.5 関数を定義する時に引数の前に**をつけるとキーワード引数を辞書化して受け取れるようになります。 def foo(**kwargs): print(kwargs) foo() foo(a=1,b=2,c=3) $ py main.py {} {'a': 1, 'b': 2, 'c': 3} 通常の引数と混ぜて使うことも出…