当前位置: 首页 > news >正文

【杂记一】虚拟环境以及项目依赖

一、前言:

创建一个项目,除了使用容器以外,使用虚拟环境也是一个好的选择,避免主环境被污染。

二、虚拟环境创建:

暂定....

三、项目依赖

在生成requirements.txt之前,最好使用虚拟环境来隔离项目依赖。这可以防止全局包污染你的项目依赖列表

3. 1 使用pip freeze(基本方法,不推荐

pip freeze > requirements.txt

不推荐这个命令,是因为:

(1)该命令只会生成通过pip install 安装的包

(2)如果没有创建Python的虚拟环境(virtualenv),该命令会将环境中所有的包都输出到requirements.txt文件,不管你当前的Project有没有用到这些包

3.2 使用pipreqs(推荐)

pip install pipreqs
pipreqs ./ --encoding=utf8

#如果是在windows环境,需要加上一个命令参数 --encoding=utf8
# 这个参数的意思指定编码为utf8,不然会报错误

## 如果ubuntu
pipreqs /path/to/any/folder 

#--force 强制执行,当 生成目录下的 requirements.txt 存在时覆盖。
 pipreqs ./ --encoding=utf8 --force

GitHub - bndr/pipreqs: pipreqs - Generate pip requirements.txt file based on imports of any project. Looking for maintainers to move this project forward.pipreqs - Generate pip requirements.txt file based on imports of any project. Looking for maintainers to move this project forward. - bndr/pipreqshttps://github.com/bndr/pipreqs

 3.3 使用 Python 调用 pipreqs

如果无法直接使用pipreqs,可以直接通过 Python 调用 pipreqs 模块:

python -m pipreqs ./ --encoding=utf8 --force

3.4 install requirements.txt

# 进入创建的虚拟环境 project_env

pip install -r requirements.txt

http://www.dtcms.com/a/77931.html

相关文章:

  • 一个成功的Git分支模型
  • 深入了解Python的shutil模块
  • 流量层级、流量价格、流量速度如何突破?
  • 基于51单片机和LCD12864、DS3231、独立按键的万年历可调时钟+温度显示
  • 和鲸科技受邀赴中国气象局气象干部培训学院湖南分院开展 DeepSeek 趋势下的人工智能技术应用专题培训
  • 【Java】grpc-java在IDEA中build不成功的相关问题,Android,codegen C++语言排除
  • LeetCode135☞分糖果
  • 【每日论文】Rewards Are Enough for Fast Photo-Realistic Text-to-image Generation
  • 实现前端.ttf字体包的压缩
  • 日程提醒类软件选择用哪个?理由是什么?
  • error LNK2019: 无法解析的外部符号 main,函数 “int __cdecl invoke_main(void)“
  • 信创系统极速文件查找:locate 命令详解
  • 【初学者】请介绍一下指针分析(Pointer Analysis)?
  • 三.Go的第一个程序hello.go
  • Python pyqt+flask做一个简单实用的自动排班系统
  • 天梯赛 L2-010 排座位
  • MATLAB例程:TOA测距定位,三维任意(>3)个锚节点,对一个未知点定位、带EKF的轨迹解算(附代码下载链接)
  • Python核心:Django配置swagger的详细步骤和代码举例
  • 如何实现一个call函数?
  • TCP 协议
  • Java EE(12)——网络编程——UDP/TCP回显服务器
  • 2024年国赛高教杯数学建模E题交通流量管控解题全过程文档及程序
  • C语言编译链接详解
  • Matplotlib 柱形图
  • 卡码网25题——掌握ACM输入输出方式(15 至 18)
  • 【大模型面试知识】基础问题分析总结
  • AnyTouch:跨多个视觉触觉传感器学习统一的静态动态表征
  • @Resource注解的两种注入方式
  • Prometheus使用
  • Java:Arrays类:操作数组的工具类