キャリア、転職、人材育成のヒントを提供してきた「リスキリング」チャンネルは新生「NIKKEIリスキリング」としてスタート。 ビジネスパーソンのためのファッション情報を集めた「Men’s Fashion」チャンネルは「THE NIKKEI MAGAZINE」デジタル版に進化しました。 その他のチャンネルはお休みし、公開コンテンツのほとんどは「日経電子版」ならびに課題解決型サイト「日経BizGate」で引き続きご覧いただけます。
承前:Pythonのデコレータ(decorator)を理解する 2 デコレータに引数を渡す 素晴らしい、ではデコレータ自身に引数を渡すにはどうしたらよいのだろうか? さて、デコレータは引数として関数を受け入れる必要があるのでちょっとやっかいだ。デコレータに直接デコレートされた関数-引数を渡すことはできないからだ。 解決を急ぐ前に、ちょっと復習をしよう。 # デコレータは'普通'の関数である def my_decorator(func): print "I am a ordinary function" def wrapper(): print "I am function returned by the decorator" func() return wrapper # そのため、なにも"@"など使わずに呼び出すことができる def lazy_function(): print "zzz
承前:Pythonのデコレータ(decorator)を理解する 1 デコレータ詳説 先の例に対して、デコレータ構文を使うと次のようになる: @my_shiny_new_decorator def another_stand_alone_function(): print "Leave me alone" another_stand_alone_function() #出力: #Before the function runs #Leave me alone #After the function runs そう、これで全部、シンプルだ。@decoratorは単なる、 another_stand_alone_function = my_shiny_new_decorator(another_stand_alone_function) のショートカットにすぎない。Decoratorはデザインパ
StackOverFlow:Understanding Python decoratorsに対するe-satis氏によるデコレータの丁寧な解説。 一つエクスキューズしておくと、翻訳の作法とかよく分かってません。でも頑張ったつもり。つもり。 Imran氏による質問の内容 @makebold @makeitalic def say(): return "Hello" というデコレータに対して <b><i>Hello</i></b> という文字列を返すような関数ってどうやって書いたらいいの? e-satis氏による解説 Pythonの関数はオブジェクトである デコレータを理解するためには、まずPythonにおける関数がオブジェクトであることを理解しなければならない。このことは重大な影響をもたらす。なぜなのか簡単な例とともに見てみよう。 def shout(word="yes"): return
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く