python3利用venv配置虚拟环境及过程中的小问题小结


Posted in Python onAugust 01, 2018

在利用python进行flask等开发过程中经常需要配置虚拟环境以方便针对不同的项目需求配置不同的生产环境。在python3.3之前,需要利用virtualenv等工具来实现python虚拟开发环境的配置,在python3.3中加入了venv模块支持原生创建虚拟环境。但在python3.3版本中venv模块没有内置pip包,在3.4版本后加入了pip包,创立并激活虚拟环境后可直接使用。本篇以配置一个虚拟

环境并安装flask为例记录我自己配置虚拟环境的过程。

总的来说分为以下三步:

创建虚拟环境?激活虚拟环境?在虚拟环境中安装flask等包

1. 创建虚拟环境:

在当前目录创建虚拟环境(file_name为自定义的虚拟环境的名称):

>python -m venv file_name

注意以管理员身份运行cmd或power shell。虚拟环境存放的目录可以是任意的,不必与之前安装的python解释器安装在同一目录。我的安装过程中安装在S盘的new目录下,虚拟环境的名称自定义为venv_0。

python3利用venv配置虚拟环境及过程中的小问题小结 

创建名为venv_0的虚拟环境

python3利用venv配置虚拟环境及过程中的小问题小结 

创建成功

2. 激活虚拟环境:

运行venv_0目录下scripts\activate

python3利用venv配置虚拟环境及过程中的小问题小结 

当命令提示符前出现(file_name)时,表明已进入虚拟环境

若使用的不是命令提示符而是PowerShell可能会出现系统禁止运行脚本的错误,这是因为由于安全方面的考虑,PowerShell默认的执行策略为禁止运行脚本需要对执行策略进行更改,需要使用到以下命令:

  • get-executionpolicy———————查看系统当前的执行策略
  • set-executionpolicy policy———-更改系统执行策略为policy
  • 执行策略有如下四种:
  • Restricted———-不允许任何脚本运行,此为默认设置。
  • AllSigned—-只有数字签名的脚本才能运行
  • RemoteSigned—-本地编写的脚本可运行,网络脚本需要签名和用户确认。
  • UnRestricted—任何脚本都可运行,网络脚本运行前会警告并请求用户确认
  • ByPass?任何脚本都可随意运行,极少使用,存在安全隐患。

激活过程中将执行策略更改为RemoteSigned即可。

3. 安装包:

可用pip list查看已安装的包,用pip install package_name安装新包

若安装过程出现如下错误:

python3利用venv配置虚拟环境及过程中的小问题小结 

可按照最后一条错误信息里的路径找到init.py找到75行的return s.decode('utf8-8'),在这行代码前删除一个空格再加上一个空格然后保存。好吧我不知道这是什么玄学原理,不过反正这样就行了QAQ。然后再次pip安装

python3利用venv配置虚拟环境及过程中的小问题小结 

恭喜,安装成功!

4. 退出虚拟环境

deactivate

python3利用venv配置虚拟环境及过程中的小问题小结

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
pycharm 使用心得(八)如何调用另一文件中的函数
Jun 06 Python
python根据文件大小打log日志
Oct 09 Python
Python调用系统底层API播放wav文件的方法
Aug 11 Python
Python 模拟员工信息数据库操作的实例
Oct 23 Python
Python基于列表模拟堆栈和队列功能示例
Jan 05 Python
python实现隐马尔科夫模型HMM
Mar 25 Python
python机器学习之贝叶斯分类
Mar 26 Python
python 循环数据赋值实例
Dec 02 Python
PyCharm无法引用自身项目解决方式
Feb 12 Python
python3光学字符识别模块tesserocr与pytesseract的使用详解
Feb 26 Python
基于python实现判断字符串是否数字算法
Jul 10 Python
pandas参数设置的实用小技巧
Aug 23 Python
mvc框架打造笔记之wsgi协议的优缺点以及接口实现
Aug 01 #Python
python爬虫自动创建文件夹的功能
Aug 01 #Python
浅谈关于Python3中venv虚拟环境
Aug 01 #Python
python Web开发你要理解的WSGI & uwsgi详解
Aug 01 #Python
Django教程笔记之中间件middleware详解
Aug 01 #Python
flask框架中勾子函数的使用详解
Aug 01 #Python
flask中过滤器的使用详解
Aug 01 #Python
You might like
Laravel使用memcached缓存对文章增删改查进行优化的方法
2016/10/08 PHP
PHP长连接实现与使用方法详解
2018/02/11 PHP
浅谈laravel中的关联查询with的问题
2019/10/10 PHP
10款新鲜出炉的 jQuery 插件(Ajax 插件,有幻灯片、图片画廊、菜单等)
2011/06/08 Javascript
jQuery EasyUI API 中文文档 - Draggable 可拖拽
2011/09/29 Javascript
基于jQuery的公告无限循环滚动实现代码
2012/05/11 Javascript
javascript 星级评分效果(手写)
2012/12/24 Javascript
jquery 跳到顶部和底部动画2句代码简单实现
2013/07/18 Javascript
Nodejs进程管理模块forever详解
2014/06/01 NodeJs
javascript实现修改微信分享的标题内容等
2014/12/11 Javascript
node.js中的fs.readSync方法使用说明
2014/12/17 Javascript
jQuery选择器querySelector的使用指南
2015/01/23 Javascript
javascript页面倒计时实例
2015/07/25 Javascript
巧用jQuery选择器提高写表单效率的方法
2016/08/19 Javascript
ionic2 tabs使用 Modal底部tab弹出框
2016/12/30 Javascript
jquery设置css样式的多种方法(总结)
2017/02/21 Javascript
解决BootStrap Fileinput手机图片上传显示旋转问题
2017/06/01 Javascript
Vue中mintui的field实现blur和focus事件的方法
2018/08/25 Javascript
详解Axios 如何取消已发送的请求
2018/10/20 Javascript
关于RxJS Subject的学习笔记
2018/12/05 Javascript
js 计算图片内点个数的示例代码
2019/04/04 Javascript
vue用ant design中table表格,点击某行时触发的事件操作
2020/10/28 Javascript
Python中os.path用法分析
2015/01/15 Python
python使用xmlrpclib模块实现对百度google的ping功能
2015/06/02 Python
浅谈python 中类属性共享的问题
2019/07/02 Python
Python&&GDAL实现NDVI的计算方式
2020/01/09 Python
pycharm通过ssh连接远程服务器教程
2020/02/12 Python
TensorFlow使用Graph的基本操作的实现
2020/04/22 Python
Django 解决上传文件时,request.FILES为空的问题
2020/05/20 Python
世界上最大的专业美容用品零售商:Sally Beauty
2017/07/02 全球购物
动物科学专业求职信
2014/07/27 职场文书
安全伴我行演讲稿
2014/09/04 职场文书
护士个人年度总结范文
2015/02/13 职场文书
金陵十三钗观后感
2015/06/04 职场文书
毕业实习证明范本
2015/06/16 职场文书
Python读取和写入Excel数据
2022/04/20 Python