ホームページ >バックエンド開発 >Python チュートリアル >Python デコレーター: 一度に 1 つのレイヤーを関数に魔法を加える
Python のデコレータは、既存の関数の周りに追加の機能をラップできる強力なツールです。これは、実際に元のコードを変更することなく、関数に「素晴らしい」という追加のレイヤーを追加することだと考えてください。
デコレータは、別の関数を入力として受け取り、追加の機能を追加して、新しい関数を返す単純な関数です。
例:
def shout(func): def wrapper(): return func().upper() return wrapper @shout def greet(): return "hello" print(greet()) # Outputs: HELLO
ここでは、@shout デコレーターがgreet() を変換して、出力を大文字で返します。
デコレータは、次のような横断的な機能を関数に追加するのに便利です。
はい、複数のデコレーターをスタックして、複数の機能レイヤーを 1 つの関数に適用できます。
@authenticate @log def process_data(data): # Function code
これにより、最初に認証が実行され、次にログが実行され、最後に process_data が実行されます。
デコレータを使用すると、コードを乱雑にせずに機能を追加できます。これらは、クリーンで再利用可能な強化された機能への近道です。
?混乱せずに、より多くのことを実行できる関数を紹介します!"
以上がPython デコレーター: 一度に 1 つのレイヤーを関数に魔法を加えるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。