gpt4 book ai didi

python - 如何更改 __builtins__ 模块变量?

转载 作者:太空宇宙 更新时间:2023-11-04 03:30:43 25 4
gpt4 key购买 nike

如果你运行这段代码:

src = "import os"
d = dict(__builtins__={})
exec src in d

Python 说:

ImportError: __import__ not found

这就是我喜欢做的,但是在创建(或可能加载)一个新模块时:

import imp
mod = imp.new_module("foo")
src = "import os"
exec src in mod.__dict__

如您所见,它运行了,但我喜欢它不像上面的程序那样运行。我喜欢禁用所有内置变量和函数。有什么办法吗?

如果你打印 mod.__dict__,你可以看到它有 __builtins__ 变量,就像任何 Python 模块一样。我想我必须将其值更改为 {},但我不知道如何更改。

最佳答案

我想我必须将它的值更改为 {},但我不知道该怎么做。

mod.__dict__["__builtins__"] = {}

关于python - 如何更改 __builtins__ 模块变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31211382/

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