2种包管理工具:pip和pipenv
一、pip简介
pip
是 Python 的包安装器,它用于安装和管理 Python 包,它通过requirements.txt文件来管理项目所依赖的包
1、生成requirements.txt文件:pip freeze > requirements.txt
2、安装requirements.txt依赖:pip install -r requirements.txt
3、激活虚拟环境:source myenv/bin/activate
二、pipenv简介
pipenv
是一个Python开发工作流的包管理工具,它旨在为项目提供更好的依赖管理和环境隔离。
1、Pipfile
Pipfile
是一个TOML(Tom's Obvious, Minimal Language)格式的文件,它记录了项目的直接依赖(类似于 requirements.txt
),同时提供了更多的元数据和一个更易读的格式。在 Pipfile
中,你可以指定包的版本号,也可以选择使用版本范围或者星号(*
)来允许更灵活的版本更新。
2、Pipfile.lock
Pipfile.lock
是由 pipenv
自动生成的一个JSON格式的文件,它包含了所有依赖(包括间接依赖)的精确版本号和哈希值。这个文件的目的是确保在不同环境中安装相同版本的依赖,以此来提供一致的开发、测试和生产环境。
3、对于新创建的项目
(1)初始化虚拟环境和Pipfile: 在项目的根目录下运行 pipenv
命令将会自动创建一个虚拟环境(如果尚未存在)和一个新的 Pipfile
。如果你已经知道你的项目将会使用哪个Python版本,你可以指定这个版本:
pipenv --python 3.8
这个命令将会创建一个使用Python 3.8版本的虚拟环境。如果你不指定版本,pipenv
将使用系统中的默认Python版本。pipenv install
命令安装项目的第一个包,Pipfile
将会被更新,同时 Pipfile.lock
也会被创建:pipenv install requests
这个例子中,requests
是作为项目依赖被安装的一个示例Python包。你可以替换成你项目实际需要的任何包。pipenv install
安装包时,Pipfile.lock
会自动生成。你也可以通过下面的命令手动生成或更新它:pipenv lock
这个命令会基于 Pipfile
中的内容生成或更新 Pipfile.lock
文件,确保所有依赖的版本都被锁定。以上步骤完成后,你的项目目录下应该会有一个
Pipfile
和一个 Pipfile.lock
文件,分别记录了项目的直接依赖和所有依赖的具体版本信息。这样,其他人在使用 pipenv install
命令时,就会根据 Pipfile.lock
中锁定的版本来创建相同的开发环境。4、使用Pipfile和Pipfile.lock
(1)先安装pipenv,并添加 pipenv 到环境变量,安装方法参考【三-2、3】
注意:是全局安装 pipenv
,然后用它为项目创建虚拟环境,而不是先创建1个虚拟环境,然后在虚拟环境中把pipenv当作1个包进行安装,因为并不符合 pipenv
设计的初衷。pipenv
旨在自动管理虚拟环境,而不是在已有的虚拟环境中运行
(2)下载了一个新项目后,项目中已经有Pipfile
和 Pipfile.lock,
可以使用以下命令来安装 Pipfile
中指定的依赖:
pipenv install
这个命令会创建一个新的虚拟环境(如果尚未创建),并在该环境中安装 Pipfile
中列出的所有包。如果存在 Pipfile.lock
,pipenv
将根据锁文件中的精确版本来安装依赖,以确保环境一致性。
(3)安装新包并更新 Pipfile
和 Pipfile.lock
,可以使用:
pipenv install <package>
(4)卸载包并从 Pipfile
和 Pipfile.lock
中移除,可以使用:
pipenv uninstall <package>
pipenv shell
三、pipenv初始化项目
pip show pipenv
如果命令返回了 pipenv 的信息,那么 pipenv 已安装。如果没有返回任何信息,那么你需要安装 pipenv
如果 pipenv 还没��安装,你可以使用 pip 来安装它。由于你正在使用 zsh,建议使用以下命令以确保 pipenv 安装到用户级别的目录,避免需要管理员权限:
pip install --user pipenv
pipenv
后,确保 pipenv
的可执行文件路径已添加到你的环境变量中。(1)查找pipenv的安装目录: pip show pipenv 这个命令会显示 pipenv 包的详细信息,包括它的安装位置。查找 Location: 行,它会告诉你 pipenv 的安装目录。 (2)确定pipenv可执行文件的目录: 通常,pipenv 的可执行文件位于该安装目录的 bin 子目录下,eg: 如果 Location: 显示的路径是 /Users/admin/Library/Python/3.7/lib/python/site-packages 那么 pipenv 的可执行文件可能位于 /Users/admin/Library/Python/3.7/bin (3)添加到环境变量:编辑 ~/.zshrc 文件,添加: export PATH="/Users/admin/Library/Python/3.7/bin:$PATH" 保存并关闭后运行: source ~/.zshrc
4、确认pipenv的可执行文件已经被正确添加到环境变量中
1 2 3 4 | which pipenv 这个命令会输出 pipenv 可执行文件的完整路径,如果 pipenv 已经正确安装并且路径已经添加到环境变量中。 如果 which 命令没有返回任何输出,这可能意味着 pipenv 没有安装,或者其安装路径没有添加到环境变量中。在这种情况下,您可以尝试使用 pip 查找 pipenv 的安装位置: |
5、使用pipenv创建一个新的虚拟环境
1 2 3 4 5 | 打开终端导航到项目的根目录,分别运行 以下命令 pipenv - - python 3.10 pipenv install pipenv - - python 3.10 来创建一个新的虚拟环境。如果已经存在与 Pipfile 匹配的 Python 版本的虚拟环境,pipenv 将会复用它,而不是创建一个新的。 pipenv install 来根据 Pipfile.lock 安装所有依赖。这将确保你的虚拟环境中的依赖与项目需要的依赖一致 |
6、激活虚拟环境,并查看安装的所有包
pipenv shell
pip list
pipenv shell 会激活虚拟环境,使您进入到虚拟环境的 shell 中。在这个 shell 中,您可以直接运行 pip list 来查看所有已安装的包,就像在普通的系统环境中一样。
7、在PyCharm 中将这个虚拟环境设置为你的项目解释器
1 2 3 4 5 6 7 | 打开 PyCharm,转到 File > Settings(或者 PyCharm > Preferences 在 macOS 上)。 在 Project: <你的项目名> > Python Interpreter 中。 点击齿轮图标,选择 Add。 在弹出的窗口中,选择 Pipenv Environment。 PyCharm 将自动检测到 Pipfile 并提供创建虚拟环境的选项。由于你已经通过命令行创建了虚拟环境,PyCharm 也应该能够识别它。 选择合适的虚拟环境后,点击 OK。 这样,你就可以在 PyCharm 中使用 pipenv 创建的虚拟环境,并享受 PyCharm 提供的所有功能,比如代码完成、调试等。同时,你也保留了 pipenv 提供的依赖管理和环境一致性的好处。 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App