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 相关文章推荐
python实现从一组颜色中找出与给定颜色最接近颜色的方法
Mar 19 Python
Python解析nginx日志文件
May 11 Python
浅谈django model的get和filter方法的区别(必看篇)
May 23 Python
Python生成随机密码的方法
Jun 16 Python
Python SqlAlchemy动态添加数据表字段实例解析
Feb 07 Python
python3+PyQt5+Qt Designer实现扩展对话框
Apr 20 Python
python3基于OpenCV实现证件照背景替换
Jul 18 Python
深入理解python中sort()与sorted()的区别
Aug 29 Python
python opencv 批量改变图片的尺寸大小的方法
Jun 28 Python
python web框架中实现原生分页
Sep 08 Python
详解python的内存分配机制
May 10 Python
Python的这些库,你知道多少?
Jun 09 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
如何对PHP程序中的常见漏洞进行攻击(下)
2006/10/09 PHP
PHP正则表达式替换站点关键字链接后空白的解决方法
2014/09/16 PHP
js Flash插入函数免激活代码
2009/03/31 Javascript
鼠标事件延时切换插件
2011/03/12 Javascript
js使用递归解析xml
2014/12/12 Javascript
js实现获取div坐标的方法
2015/11/16 Javascript
jQuery 1.9.1源码分析系列(十五)之动画处理
2015/12/03 Javascript
js实现图片上传并正常显示
2015/12/19 Javascript
ajax跨域调用webservice的实现代码
2016/05/09 Javascript
AngularJS基础 ng-keydown 指令简单示例
2016/08/02 Javascript
JS实现图片点击后出现模态框效果
2017/05/03 Javascript
Vue2 使用 Echarts 创建图表实例代码
2017/05/18 Javascript
vue中倒计时组件的实例代码
2018/07/06 Javascript
使用Vue做一个简单的todo应用的三种方式的示例代码
2018/10/20 Javascript
基于webpack4.X从零搭建React脚手架的方法步骤
2018/12/23 Javascript
如何检查一个对象是否为空
2019/04/11 Javascript
vue实现路由懒加载及组件懒加载的方式
2019/06/11 Javascript
Vue防止白屏添加首屏动画的实例
2019/10/31 Javascript
Vue实现图书管理案例
2021/01/20 Vue.js
python3使用PyMysql连接mysql数据库实例
2017/02/07 Python
Python 中 list 的各项操作技巧
2017/04/13 Python
Django的分页器实例(paginator)
2017/12/01 Python
python中将一个全部为int的list 转化为str的list方法
2018/04/09 Python
python画微信表情符的实例代码
2019/10/09 Python
Python中如何将一个类方法变为多个方法
2019/12/30 Python
python 已知一个字符,在一个list中找出近似值或相似值实现模糊匹配
2020/02/29 Python
Python count函数使用方法实例解析
2020/03/23 Python
python字典通过值反查键的实现(简洁写法)
2020/09/30 Python
Python使用tkinter实现小时钟效果
2021/02/22 Python
8款使用 CSS3 实现超炫的 Loading(加载)的动画效果
2015/03/17 HTML / CSS
HTML5 embed标签定义和用法详解
2014/05/09 HTML / CSS
医药工作者的求职信范文
2013/09/21 职场文书
珠宝的促销活动方案
2014/08/31 职场文书
2015纪念九一八事变84周年演讲稿
2015/03/19 职场文书
装饰施工员岗位职责
2015/04/11 职场文书
2015暑假打工实践报告
2015/07/13 职场文书