您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何保护我的Python代码库,以使访客看不到某些模块,但仍然可以使用?

如何保护我的Python代码库,以使访客看不到某些模块,但仍然可以使用?

在包的__init__方法中,foo您可以更改__path__以使其在其他目录中查找其模块。

因此,创建一个名为的目录secret,并将其放入您的私有Subversion存储库中。在secret您的专有权bar.py。在__init__.pypublicfoo包中输入以下内容

__path__.insert(0,'secret')

这将意味着谁拥有了私人仓库等用户secret目录,他们将获得专有bar.pyfoo.bar作为secret是在搜索路径的第一个目录。对于其他用户,Python将无法找到secret,并期待在接下来的目录中__path__,因此将加载正常bar.pyfoo

因此它将看起来像这样:

   private
    └── trunk/
        └── secret/
            └── bar.py
    public
    └── trunk/
        ├── __init__.py
        └── foo/
            ├── __init__.py
            ├── bar.py
            ├── baz.py
            └── quux.py
python 2022/1/1 18:34:32 有226人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶