【问题标题】:Install a python package/module from github in local folder an use it在本地文件夹中从 github 安装 python 包/模块并使用它
【发布时间】:2019-01-05 13:06:57
【问题描述】:

问题

我想用pip3 将一个python 模块从github 安装到一个名为local_lib/ 的本地文件夹中,然后在脚本中使用它,没有任何virtualenv

上下文

这是我的文件夹结构:

.
+-- local_lib/ // Folder where the package must be installed
+-- my_script.py

这是我用来从 github 将 path.py 包安装到 local_lib/ 文件夹中的命令行:

pip3 install --upgrade --target local_lib git+https://github.com/jaraco/path.py.git 

下面是命令行后面local_lib/文件夹的内容:

.
+-- local_lib/ // Folder where the package must be installed
|   +-- __pycache__
|   +-- importlib_metadata-0.8.dist-info
|   +-- path.py-11.5.1.dev20+g3684c4d.dist-info
|   +-- zipp-0.3.3.dist-info
|   +-- importlib_metadata
+-- my_script.py

这里是my_script.py的内容:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

from local_lib.path import Path

if __name__ == '__main__'::
    print(Path('.') / 'generated_folder')

但是当我使用python3 my_script.py 执行脚本时,我得到以下导入错误:

回溯(最近一次通话最后一次):
文件“my_program.py”,第 4 行,模块
从 local_lib.path 导入路径
ModuleNotFoundError:没有名为“local_lib.path”的模块

我应该改变将包导入 my_scipt.py 的方式还是我应该改变命令行来安装包?

【问题讨论】:

    标签: python python-3.x pip


    【解决方案1】:

    你必须告诉 Python 它必须在 local_lib 中查找模块。例如。通过将其添加到脚本中的sys.path从中导入)或将其添加到您的PYTHONPATH 环境变量。

    【讨论】:

      【解决方案2】:

      为此,您只需将 path.py 文件下载到您的 local_lib 文件夹中,您的 path.py 用例就可以工作了。你不需要用pip3安装它。

      如果您希望path.py 可用于机器上任何文件夹中的脚本,使用相同的语法,使用solution from Roland Smith 或使用pip install path.py 以通用方式安装它。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-03-31
        • 2013-02-08
        • 2018-02-21
        • 1970-01-01
        • 2019-03-02
        • 2023-02-04
        相关资源
        最近更新 更多