pycharm用Pipenv创建项目

一、pipenv介绍

pipenv是一个python的包管理工具,提供python的各个版本间的管理,各种包管理。官网

pipenv主要有以下特点:

  • pipenv集成了pip,virtualenv两者的功能。
  • pipenv会在项目根目录下创建Pipfile文件用于记录包的版本信息、Pipfile.lock文件来锁定安装包的版本和依赖信息,管理包之间的依赖关系。
  • 无需激活虚拟机环境执行代码,只要有pipfile文件即可使用虚拟环境的依赖包执行python程序,如:通过执行命令pipenv run python xx.py
  • 在一个新的项目根目录下执行pipenv install,则他会自动创建一个虚拟环境,并且生成一个Pipfile文件;
  • 当install命令没有传递参数指定安装包,如果当前存在Pipfile,则会自动安装所有Pipfile中的packages中的包。

二、使用pipenv

2.1 安装pipenv

cmd窗口中,输入代码:

复制代码
pip install pipenv

安装完成后,随意新建一个文件夹Pipenv示例,cmd管理员权限切换到该文件夹路劲下。

2.2 创建虚拟环境

方式1: 安装指定python版本的虚拟环境:pipenv install --python 3.12.1

注:要打包的.py项目文件用的什么python版本安装的第三方库,就安装什么python版本,(python版本不同安装的同名第三方库可能有差异),不然很可能打包出来的exe不能运行。

方式2: 直接使用命令pipenv install,在虚拟环境目录下新增一个虚拟环境

执行完后,可以看到当前目录下创建了Pipfile、Pipfile.lock文件。

Pipfile文件用于记录包的版本信息;

Pipfile.lock文件来锁定安装包的版本和依赖信息,管理包之间的依赖关系;

Pipfile文件可以复制到其他项目内,通过执行pipenv install命令,根据这个Pipfile文件生成虚拟环境和依赖包的安装。

2.3 激活环境

在文件夹Pipenv示例根目录中激活环境:pipenv shell

查看虚拟环境安装了什么模块:pip list

2.4 虚拟环境中安装项目依赖包

在激活的虚拟环境中安装需要的第三方库,跟正常在python中安装库是一样的,例如:pip install datetime

卸载库也是跟正常在python中卸载库是一样使用:pip uninstall datetime

2.5 检查项目在虚拟环境中是否能正常运行

将要运行的项目文件,放在文件夹Pipenv示例跟目录下,有两种方式运行:

方式1: 在激活的虚拟环境中,输入:python xxx.py

方式2:在未激活的虚拟环境状态下,文件夹Pipenv示例跟目录下输入:pipenv run python xxx.py(只要有Pipfile文件即可)

运行完程序未报错,则认为项目在该虚拟机环境下能正常运行;

如果程序报错缺依赖包,再按上面2.4的步骤安装项目依赖包。

2.6 打包项目

在虚拟环境中安装打包工具:pip install pyinstaller

打包:pyinstaller -F xxx.py,pyinstaller其他参数不做详细介绍。

如果下次要进入该虚拟环境,直接在文件夹Pipenv示例跟目录中,执行命令pipenv shell即可进入

2.7 删除虚拟环境

命令:pipenv --rm

删除虚拟环境后,如果目录下仍存在Pipfile、Pipfile.lock文件,可以通过pipenv install重新进行安装虚拟环境,且重新安装的虚拟环境,名称与删除前一致。

若想退出虚拟环境,可以输入exit退出。

相关推荐
Ulyanov12 小时前
雷达导引头Python仿真框架:GPU加速、6-DOF模型与半实物仿真接口
开发语言·python·雷达信号处理·雷达导引头
列逍12 小时前
博客系统测试
自动化测试·python·性能测试
星云开发13 小时前
拒绝无效加班!用Python打造自动化办公流,附Word/PDF互转硬核代码
python
dream_home840713 小时前
图像算法模型NPU适配与算法服务实战指南
人工智能·python·算法·npu 图像服务
AIGS00113 小时前
跨越语义鸿沟:企业本体语义平台的构建与落地
java·人工智能·python·机器学习·人工智能ai大模型应用
李可以量化13 小时前
PTrade 量化策略实战:二八轮动策略深度解析(下)
python
Mx_coder14 小时前
8年Java开发者AI转型第二周:RAG检索优化-从60%到90%准确率的3个关键技巧 (Day 13-14)
人工智能·python
自动化和Linux14 小时前
【pytest在pycharm中运行与CMD命令运行区别一】
python·pycharm·pytest
大鱼>14 小时前
多宠物家庭智能管理平台:云端架构与多设备协同实战
python·算法·iot·宠物
Li Ming&14 小时前
Python办公自动化:利用Python批量将PDF转换为图片文件
python·pdf·pip