gpt4 book ai didi

python - plpython 中的导入语句是如何处理的?

转载 作者:太空狗 更新时间:2023-10-29 16:54:49 26 4
gpt4 key购买 nike

我有一个 plypython 函数,它执行一些 json 魔术。为此,它显然导入了 json 库。

是否在每次调用函数时调用导入?是否有任何我必须注意的性能影响?

最佳答案

import 在每次函数调用时执行。如果您在函数体内使用 import 语句编写一个普通的 Python 模块,这与在模块级别相反,您会得到相同的行为。

是的,这会影响性能。

您可以像这样缓存您的导入来解决这个问题:

CREATE FUNCTION test() RETURNS text
LANGUAGE plpythonu
AS $$
if 'json' in SD:
json = SD['json']
else:
import json
SD['json'] = json

return json.dumps(...)
$$;

诚然这不是很漂亮,并且正在讨论更好的方法来做到这一点,但它们不会在 PostgreSQL 9.4 之前发生。

关于python - plpython 中的导入语句是如何处理的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15023080/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com