5

Python では、値がスコープに入る方法が 3 つあります。パラメータとして渡される方法、外側のスコープからアクセスできる方法、最後に、外側のクラスと外側の関数の最初のパラメータが で使用可能になる方法super()です。他のケースに拡張できるように、このメカニズムを開発者に公開してみませんか?

__context__ ChainMapどこでも利用でき、物事を公開するを持っている方がクリーンではないでしょうか? デフォルトでは、クラスの定義を入力すると、クラス自体が公開され__context__['__class__']、非静的で非クラスのメンバー関数を入力すると、最初のパラメーターがとして公開され__context__['self']ます。しかし、一般的には、次のような構造でもっと多くのことができます

entercontext {'blah': 123}:
     f(__context__['blah'])

これにより、dict が ChainMap にプッシュされ、スコープを終了するときにポップされます。

set_printoptionsこれは、 numpy /などの他の多くの設定のケースを実装するために使用できますget_printoptions。取得、設定、および復元の代わりに、それらをコンテキストにプッシュするだけです。

4

0 に答える 0