【问题标题】:Is it possible to pass arguments to setup.py while creating own .whl file?创建自己的 .whl 文件时是否可以将参数传递给 setup.py?
【发布时间】:2022-12-16 23:13:42
【问题描述】:
我经常在我的项目中使用更新我自己的库,我想自动化它所以我写了一个脚本调用命令,它通过os.system和setup.py构建一个.whl库,模块通过sys.argv获取构建参数,但它返回为回复:
invalid command name '1.0.9'
命令我打电话:python ./LoggerLib/setup.py bdist_wheel 1.0.9
sys.argv:['./LoggerLib/setup.py', 'bdist_wheel', '1.0.9']
目前我知道的唯一方法是将数据写入其他文件并在 setup.py 中读取它,但这并不优雅。
你知道如何以另一种方式做到这一点吗?
【问题讨论】:
标签:
python
command-line-arguments
setuptools
setup.py
【解决方案1】:
是的,可以在创建 wheel (.whl) 文件时将参数传递给 setup.py。 setup.py 脚本用于为您的 Python 包定义元数据和构建说明,它可以接受许多允许您自定义构建过程的参数。
要将参数传递给 setup.py,您可以使用 setup.py 脚本的 setup() 函数,该函数采用许多控制构建过程的关键字参数。例如,您可以使用 install_requires 参数来指定安装包所需的依赖项列表,如下所示:
setup(
name='my_package',
version='1.0.0',
install_requires=['numpy', 'pandas']
)
然后,您可以在运行 setup.py 脚本构建 wheel 文件时将这些参数传递给 setup.py,如下所示:
python setup.py bdist_wheel
您还可以直接在命令行上将其他参数传递给 setup.py 脚本,如下所示:
python setup.py bdist_wheel --install-requires 'numpy pandas'