我做了一个测试包,并上传到pypi这里: https://pypi.org/project/martin-test-package-11122/0.0.1/
我的软件包__init__.py
文件的代码是这样的:
import os
import sys
print("inside martin's test pip package")
print("the script has the arg %s" % (sys.argv[1]))
当我使用python3 __init__.py testArgument
在本地运行文件时,它只会按预期打印参数输出。
我用pip3 install martin-test-package-11122==0.0.1
安装了我的软件包,并通过运行 pip3 冻结验证了它是否已安装。
如何从命令行运行已安装的软件包?我正在尝试使用类似python3 -m pip3 martin-test-package-11122 commandLineArg
的命令调用我已安装的软件包,以从我的__init__.py
文件中获取输出,就像在本地运行时一样。但是这个 -m 命令只会导致错误/usr/bin/python3: No module named pip3
我一直在谷歌上搜索试图找到这个,我能找到的最接近的是这个 stackoverflow 问题,它说要运行python3
和import pip3
但即使尝试也没有奏效。
-m
选项完全符合您的需求。pip3
本身只安装模块,它不运行它们(Python可以(。因此,没有"pip3 包"这样的东西,因为pip3
只是一个安装程序,您也可以手动将文件复制到适当的文件夹中,但pip3
自动执行此操作。
由于包含包的文件夹的名称是example_pkg
,您应该只执行:
python3 -m example_pkg commandLineArg