【问题标题】:Install Locally Developed Python Module安装本地开发的 Python 模块
【发布时间】:2014-10-02 11:22:49
【问题描述】:

我目前正在开发一个模块,我将其用作要导入另一个项目的库。我需要一种理智的方式,我可以在 python 站点包中安装这个模块,这样我每次更改它时都不需要重新安装它。目前,我正在使用sudo pip install --force-reinstall {BASE_FOLDER_FOR_MODULE},但每次对模块代码进行任何更改时都需要重新运行此命令。

我能找到的关于这个主题的一点点信息似乎表明,虽然我可以在我的另一个项目的 site-packages 文件夹中符号链接模块的基本文件夹,但这可能不一定是这样做的好方法。对文件夹进行符号链接是否不好,如果是,为什么?有其他(更好的)选择吗?

谢谢

【问题讨论】:

    标签: python python-2.7 python-module


    【解决方案1】:

    如果库仍在积极开发中,请考虑将其添加到环境变量PYTHONPATHPYTHONPATH 中的目录附加到 sys.path 并在尝试查找模块时最后搜索。使用PYTHONPATH 意味着您只需进行最少的更改(将其设置在配置文件源文件或.bashrc 文件中)即可正常工作。库完成后,您可以将其安装到 site-packages 目录并将其从 PYTHONPATH 中删除。

    【讨论】:

    • 我正在尝试执行此操作,当我打印出 sys.path 时,我在列表中看到了我的文件夹,但我无法导入该模块。我的文件夹结构是base_folder/src/folder1/all my code lives here。 setup.py 文件位于基本文件夹中。在本例中,我尝试将 PYTHONPATH 设置为基本文件夹和 folder1,但仍然无法按其名称加载模块'
    • 您要导出PYTHONPATH 吗?环境变量只对当前进程可见,除非它被导出。例如export PYTHONPATH=blah(用于 bash)。
    • 我在我的 bash 配置文件中添加了一个导出语句,并确保在尝试之前获取配置文件
    • .bash_profile 只在登录时执行一次。每次打开新终端时都会执行.bashrc。您需要注销并再次登录,.bash_profile 中的更改才能生效。尝试在命令行上设置PYTHONPATH,然后先运行python -m my_module
    猜你喜欢
    • 1970-01-01
    • 2011-04-06
    • 2021-02-21
    • 1970-01-01
    • 2023-02-04
    • 1970-01-01
    • 1970-01-01
    • 2020-04-21
    • 2013-03-26
    相关资源
    最近更新 更多