Python 相当于 PHP 的compact() 和 extract()
在 PHP 中,compact() 和 extract() 函数有实际用途分别用于创建哈希表和更新局部变量。 Python 提供了类似的功能,尽管它遵循不同的原则。
Python 的compact() 实现
虽然在Python 中不严格推荐,但可以实现compact()类函数如下:
<code class="python">import inspect def compact(*names): caller = inspect.stack()[1][0] 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 对显式变量赋值而不是动态更新局部变量的偏好。
替代方法
如果仍然需要 Compact() 或 extract() 之类的函数,考虑你的方法是否符合 Pythonic 的清晰和明确原则。直接访问变量或使用字典等数据结构等替代方案可能在 Python 中更合适。
以上是如何在Python中实现PHP的compact()和extract()功能?的详细内容。更多信息请关注PHP中文网其他相关文章!