问题描述
我是一名 Python 软件包开发人员,希望将我的软件包分发给一些用户。在这些用户中,有的使用 JupyterLab 2.0,有的使用 JupyterLab 3.0。
我想知道是否可以更改某些设置(或 setup.py
中的代码),以便根据用户拥有的 JupyterLab 版本,在用户运行时安装不同版本的我的 pip install <package>
{1}}。
例如:
- 用户 1 已安装 JupyterLab 2.0。当它们运行
pip install <package>
时,它会安装软件包版本0.1.1
。 - 用户 2 已安装 JupyterLab 3.0。当它们运行
pip install <package>
时,它会安装软件包版本0.2.1
。
感谢您提供任何信息!
解决方法
在您的 setup.py 中,您可以使用条件语句来检查当前版本(如下所示)并设置您要安装的正确安装版本
import jupyterlab
version = jupyterlab.__version__
if version.startswith("2"):
install_version="0.0.1"
elif version.startswith("3"):
install_version="0.0.2"
注意:不要忘记使用异常处理来检查是否至少安装了 jupyterlab
注意:如果它与 pip 一起使用,这将不起作用。这仅适用于源代码分发并使用 pip install setup.py