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 相关文章推荐
将图片文件嵌入到wxpython代码中的实现方法
Aug 11 Python
python读写ini配置文件方法实例分析
Jun 30 Python
Python中set与frozenset方法和区别详解
May 23 Python
python+POP3实现批量下载邮件附件
Jun 19 Python
详解Python中的分组函数groupby和itertools)
Jul 11 Python
OpenCV3.0+Python3.6实现特定颜色的物体追踪
Jul 23 Python
Python队列RabbitMQ 使用方法实例记录
Aug 05 Python
Python3从零开始搭建一个语音对话机器人的实现
Aug 23 Python
Python 脚本拉取 Docker 镜像问题
Nov 10 Python
Python基础之字符串操作常用函数集合
Feb 09 Python
Pytorch mask_select 函数的用法详解
Feb 18 Python
浅谈pymysql查询语句中带有in时传递参数的问题
Jun 05 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
多人战的战术与战略
2020/03/04 星际争霸
使用sockets:从新闻组中获取文章(一)
2006/10/09 PHP
PHP 的异常处理、错误的抛出及回调函数等面向对象的错误处理方法
2012/12/07 PHP
PHP调试函数和日志记录函数分享
2015/01/31 PHP
Mac环境下php操作mysql数据库的方法分享
2015/05/11 PHP
PHP常用字符串操作函数实例总结(trim、nl2br、addcslashes、uudecode、md5等)
2016/01/09 PHP
PHP实现补齐关闭的HTML标签
2016/03/22 PHP
CodeIgniter集成smarty的方法详解
2016/05/26 PHP
php之可变变量的实例详解
2017/09/12 PHP
jQuery fadeTo方法调整图片的透明度使用介绍
2013/05/06 Javascript
jQuery选择器源码解读(四):tokenize方法的Expr.preFilter
2015/03/31 Javascript
javascript函数式编程程序员的工具集
2015/10/11 Javascript
js实现常用排序算法
2016/08/09 Javascript
微信小程序 wxapp内容组件 progress详细介绍
2016/10/31 Javascript
vue.js移动端tab组件的封装实践实例
2017/06/30 Javascript
vue2.0中vue-cli实现全选、单选计算总价格的实例代码
2017/07/18 Javascript
jQuery绑定事件方法及区别(bind,click,on,live,one)
2017/08/14 jQuery
基于BootStrap的文本编辑器组件Summernote
2017/10/27 Javascript
微信小程序实现获取自己所处位置的经纬度坐标功能示例
2017/11/30 Javascript
webpack配置proxyTable时pathRewrite无效的解决方法
2018/12/13 Javascript
Postman环境变量全局变量使用方法详解
2020/08/13 Javascript
js+canvas实现刮刮奖功能
2020/09/13 Javascript
Python 文件操作技巧(File operation) 实例代码分析
2008/08/11 Python
Python StringIO模块实现在内存缓冲区中读写数据
2015/04/08 Python
python使用mailbox打印电子邮件的方法
2015/04/30 Python
Python微信企业号开发之回调模式接收微信端客户端发送消息及被动返回消息示例
2017/08/21 Python
Python中安装easy_install的方法
2018/11/18 Python
Python 安装第三方库 pip install 安装慢安装不上的解决办法
2019/06/18 Python
tensorflow -gpu安装方法(不用自己装cuda,cdnn)
2020/01/20 Python
python中如何写类
2020/06/29 Python
python打开文件的方式有哪些
2020/06/29 Python
JDBC操作数据库的基本流程是什么
2014/10/28 面试题
财务工作个人总结
2015/02/27 职场文书
幼儿园门卫安全责任书
2015/05/08 职场文书
发言稿之优秀教师篇
2019/09/26 职场文书
TaiShan 200服务器安装Ubuntu 18.04的图文教程
2022/06/28 Servers