我想使用pip3
从github将python模块安装到名为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
执行脚本时,出现以下导入错误:
回溯(最近通话最近):
模块“
”中第4行的文件“ my_program.py” 从local_lib.path导入路径
ModuleNotFoundError:没有名为“ local_lib.path”的模块
是否应该更改将软件包导入my_scipt.py的方式?还是?应该更改命令行以安装软件包吗?
答案 0 :(得分:2)
您必须告诉Python,它必须在local_lib
中查找模块。例如。通过将其添加到脚本中的sys.path
中(从其导入之前的 )或将其添加到您的PYTHONPATH环境变量中。
答案 1 :(得分:1)
为此,您只需将path.py文件下载到您的local_lib
文件夹中,您的path.py用例就可以使用了。您不需要安装pip3
。
是否希望path.py
适用于计算机上任何文件夹中的脚本,使用相同的语法,使用solution from Roland Smith或使用pip install path.py
进行通用安装。