Python の PHP の Compact() および Extract() に相当する関数
PHP の Compact() 関数は、指定されたシンボル テーブルに対応する値でハッシュテーブルをアセンブルします名前を付け、extract() はこのプロセスを逆にします。 Python は locals()、globals()、vars() を提供しますが、これらの値の一部を分離するための組み込みメカニズムがありません。
Compact() の実装
必要に応じて、Python で Compact() と同等の関数を次のように実装できます。
<code class="python">import inspect def compact(*names): caller = inspect.stack()[1][0] # caller of compact() vars = {} for n in names: if n in caller.f_locals: vars[n] = caller.f_locals[n] elif n in caller.f_globals: vars[n] = caller.f_globals[n] return vars</code>
Python での Extract()
抽出を作成しようとしていますPython の () 関数はお勧めできません。以前の Python インタープリターでは回避策が可能でしたが、最新のバージョンでは機能しなくなりました。
Python の観点
一般的に、compact() と extract() の使用は推奨されません。 Python は、明示性、単純性、明確さという Python の原則に反しているためです。ただし、これらの関数は、デバッグ、事後分析、または動的変数の作成などの特殊な用途に使用できる場合があります。
以上がPHP の Compact() および extract() 機能を Python で複製するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。