PHP 的 Compact() 和 Extract() 在 Python 中的对应
PHP 的 Compact() 函数使用与指定符号表相对应的值组装一个哈希表名称,而 extract() 则相反这个过程。虽然 Python 提供了 locals()、globals() 和 vars(),但它缺乏用于隔离这些值的一部分的内置机制。
实现 Compact()
如果需要,您可以按如下方式实现compact()的Python等效项:
<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 的明确、简单和清晰的原则。然而,这些函数可能在调试、事后分析或动态变量创建方面有特定的应用。
以上是如何在Python中复制PHP的compact()和extract()功能?的详细内容。更多信息请关注PHP中文网其他相关文章!