如何阻止导入Python stdlib模块?

Vla*_*ala 2 python import sandbox std

在我的Python脚本中,我想阻止导入某些stdlib模块,例如ossys.我怎么做到这一点?

Phi*_*l P 5

非常字面意思,如果你的意思是"将它们存根以便它们不会被直接导入",而不是 "通过不受信任的代码使它们无法加载",那么:

import sys
sys.modules['os'] = None
sys.modules['system'] = None
Run Code Online (Sandbox Code Playgroud)

当然,没有任何模块,system所以你可能意味着sys,在这种情况下,你有麻烦.

如果你试图让不受信任的代码不能做坏事,那么看看http://wiki.python.org/moin/SandboxedPython并意识到你正在追求一些不能立即行动的东西.