python怎么新建工程_Python基础教程——使用虚拟环境创建项目

第1问:什么是虚拟环境

所谓虚拟环境,就是我们创建项目时,不使用操作系统中安装的Python,而是在项目所在目录下创建一个目录,通常叫venv,然后把系统中安装的Python以及项目依赖包都拷贝到这个venv目录中,本项目以后就使用这个venv。

faf2b2119313b07e8e0154724a2b3a2596dd8c0a.jpeg?token=05fc2ab4598782f3b69488e62cb81fa6virtualenv,虚拟环境必备工具

目前我们用得最多的虚拟环境创建工具叫virtualenv:

2cf5e0fe9925bc31049964ae192326b7c91370c6.png?token=b812e75f563e973f6208107e027ff2c1Python虚拟环境实现示意图

第2问:为什么要使用虚拟环境

一句话:为了更科学合理地管理项目依赖。举个例子:

你在公司同时开发两个项目,一个是你新开的项目,叫new_project,一个是你入职之前已经存在很多年的项目,叫old_project,new_project现在开发,肯定是使用新包新特性,所以你使用了django3.0,而old_project是五年前的人创建开发的,使用的是django1.0,而django这个包这么些年,从1.0发展到3.0,功能变动较大,你的old_project不能直接把所依赖的django1.0升级到3.0,它必须一直始终1.0。

问题来了:

你写old_project的代码时,你需要把已经安装的django3.0卸载了安装1.0你写new_project的代码时,你需要把已经安装的django1.0卸载了安装3.0你的Windows系统挂了,重装系统,或者换了台电脑,恢复开发环境的时候,你得先去old_project中装一遍,再去new_project中装一遍,如果你有几十几百个项目,你就挨个去看一遍这听上去是多么的不靠谱!

6c224f4a20a44623ccac134ed0ded9080df3d7bf.jpeg?token=7c2fdc543bfbc9fb4cd0d8194410aa13项目多年头长了系统环境变了,我崩溃了

假如你在项目目录中创建了一个venv目录,把它的依赖都放在了这里,那就简单了,无论系统环境怎么变,你的加载项都在这个venv目录中,其他的项目删除或者更新了django的版本,和你没什么关系。

总结起来就是一句话:每个项目都有自己独立的环境依赖,外部环境变化不会对其造成影响。

第3问:虚拟环境怎么使用

首先是全局安装virtualenv这个包,安装很简单,随便打开一个cmd或者powershell窗口,然后运行pip install virtualenv就可以了。

安装成功之后,需要在cmd中验证一下,运行virtualenv --version即可。

之后,就是进入你的项目目录,运行virtualenv venv命令即可。venv就是虚拟环境的目录,是可以改的,但是我们一般都使用venv。

通过PyCharm创建的项目会自动使用virtualenv维护一个虚拟环境,所以就省了很多事了。

如果在PyCharm中虚拟环境配置是正确的,当你打开一个终端,也就是terminal的时候,会是这样的:

d62a6059252dd42a8b6a89dc44c7f0b3c8eab86d.jpeg?token=140492294edd524c1f1e8fdc94cb25d4带有虚拟环境的终端操作操作窗口

写在最后

无论我们是开发大型项目,还是写一个小型程序,都要遵循这套规范,一来它本身并不复杂,二来它确实可以避免很多依赖管理的坑。所以,大家一定要用起来啊。

3801213fb80e7bece282ee6b69d2123e99506be7.png?token=98f65fca88aa8bbbe874837573c3c9b9virtualenv首页

学习和精通一门语言,尤其是能够在工程化的环境中把它用起来,需要大家坚持不懈的付出努力。

网上的资料的优点是导向性强,直达目标,缺点是资料碎片化。书本的优势是知识成体系,学完了有科班的感觉,能助你练好“内功”,缺点是资料庞大,学习成本高。大家要根据自己的需要做一个选择哦。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值