Python:防止某些软件包被其他软件包导入

时间:2019-09-04 12:30:29

标签: python import python-import

我有一个包含多个软件包的项目,例如:

development

现在,我想防止其他人可以导入特定的程序包。在上面的示例中,我希望production模块能够导入所有类型的软件包,但我不希望development中的任何模块都能够从var elems = document.getElementsByClassName('btn'); for (var i = elems.length - 1; i >= 0; i--) { (function(i) { var inner = elems[i].innerHTML; elems[i].onclick = function(){window.alert("Clicked on "+inner+" which is element number "+i)}; })(i); } <button type="button" class="btn">Button A</button> <button type="button" class="btn">Button B</button> <button type="button" class="btn">Button C</button> 导入代码。同样,我希望计算是“独立的”,因此它只能从自身导入模块,但可以由其他模块导入。

在Python文档https://docs.python.org/3/reference/import.html中,我找到了以下摘录:

  

要有选择地阻止某些模块在元路径的早期从钩子导入(而不是完全禁用标准导入系统),直接从find_spec()引发ModuleNotFoundError就足够了,而不是返回None。后者表示应该继续执行元路径搜索,而引发异常会立即终止它。

但是我不确定我需要/在什么地方覆盖此方法。对于在代码库中的哪些位置需要进行这些更改的见解将不胜感激。

0 个答案:

没有答案