在node.js中,可以在部署期间执行
npm update --production
,只要正确的package.json就位,所有相关的node.js模块都会被安装。
是否有一个Python等效的命令行可以方便部署? pip 可以做和 npm 一样的事情吗?
是的,有一个命令可以做到这一点,一旦您想要部署,您可以使用以下命令生成包文件:
pip freeze > requirements.txt
并且每当您想从同一文件安装软件包时,请使用:
pip install -r requirements.txt
您可以在这里找到有关冻结的更多信息
更新2024-09-22; uv 作为 Python 的货物/npm
uv
是我首选的 Python 打包中的 npm
(JS) 等价物。它使用 uv.lock 确保 pyproject.toml 文件中列出的依赖项解析为特定版本。
# installation
curl -LsSf https://astral.sh/uv/install.sh | sh
使用
uv
# initiate a package
uv init yourproject
cd yourproject
uv add packagename
查看更多uv:用 Rust 编写的极快的 Python 包和项目管理器
TLDR;
poetry
相当于 npm
。
我会使用 pipenv 而不是 pip。 Pipenv 自动生成远优于requirements.txt的Pipfile和Pipfile.lock
安装 pipelinev 并为您的项目进行设置
pip install --user pipenv
cd yourproject
pipenv install package1 package2 ...
从 Pipfile 安装软件包非常简单
pipenv install
了解更多:https://pipenv.kennethreitz.org/
更新:你好诗歌
我最近从 Pipenv 转向诗歌,因为诗歌拥有 Pipenv 提供的一切,甚至更多。它是端到端的,因为它包括构建项目并将其发布到 pypi。
安装诗歌
curl -sSL https://raw.githubusercontent.com/sdispater/poetry/master/get-poetry.py | python
并在路径中设置 .poetry/bin 。
poetry new yourproject
cd yourproject
poetry add packagename
像 pipelinenv 一样,它会生成 pyproject.toml 文件,满足您的所有需求。像 Pipenv 一样,安装你的依赖
poetry install
查看更多:https://poetry.eustace.io/docs/
请参阅 Python 打包战争:Pipenv 与 Poetry,对这些很棒的包进行简短回顾
你可以做一个
pip freeze > requirements.txt
在本地机器中。在服务器中,
pip install -r requirements.txt
这将安装所有依赖项
是的,您可以将包放入简单的文本文件中
requirements.txt
,例如(版本号可选)
SQLAlchemy==1.0.4
requests==2.4.3
然后做
pip install -r requirements.txt