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实现的简单文本类游戏实例
Apr 28 Python
python解决Fedora解压zip时中文乱码的方法
Sep 18 Python
Python正则表达式教程之二:捕获篇
Mar 02 Python
Python实现复杂对象转JSON的方法示例
Jun 22 Python
itchat和matplotlib的结合使用爬取微信信息的实例
Aug 25 Python
Python使用tkinter库实现文本显示用户输入功能示例
May 30 Python
Python读取实时数据流示例
Dec 02 Python
Pycharm内置终端及远程SSH工具的使用教程图文详解
Mar 19 Python
浅谈Python爬虫原理与数据抓取
Jul 21 Python
使用Python爬取Json数据的示例代码
Dec 07 Python
sklearn中的交叉验证的实现(Cross-Validation)
Feb 22 Python
解决Tkinter中button按钮未按却主动执行command函数的问题
May 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
4.与数据库的连接
2006/10/09 PHP
php实现表单多按钮提交action的处理方法
2015/10/24 PHP
PHP实现活动人选抽奖功能
2017/04/19 PHP
thinkPHP显示不出验证码的原因与解决方法分析
2017/05/20 PHP
PHP+JS实现的实时搜索提示功能
2018/03/13 PHP
Aster vs KG BO3 第三场2.19
2021/03/10 DOTA
filemanage功能中用到的lib.js
2007/04/08 Javascript
基于jQuery的弹出消息插件 DivAlert之旅(一)
2010/04/01 Javascript
javascript完美拖拽的实现方法
2013/09/29 Javascript
AngularJS整合Springmvc、Spring、Mybatis搭建开发环境
2016/02/25 Javascript
jQuery中show与hide方法用法示例
2016/09/16 Javascript
js实现控制textarea输入字符串的个数,鼠标按下抬起判断输入字符数
2016/10/25 Javascript
bootstrap的3级菜单样式,支持母版页保留打开状态实现方法
2016/11/10 Javascript
JavaScript函数节流的两种写法
2017/04/07 Javascript
利用jquery去掉时光轴头尾部线条的方法实例
2017/06/16 jQuery
AngularJS实现的生成随机数与猜数字大小功能示例
2017/12/25 Javascript
Vue实现active点击切换方法
2018/03/16 Javascript
详解node登录接口之密码错误限制次数(含代码)
2019/10/25 Javascript
JQuery获得内容和属性方法解析
2020/05/30 jQuery
解决vue-router路由拦截造成死循环问题
2020/08/05 Javascript
vue实现图书管理系统
2020/12/29 Vue.js
python中文编码问题小结
2014/09/28 Python
Python获取Linux系统下的本机IP地址代码分享
2014/11/07 Python
python使用BeautifulSoup分页网页中超链接的方法
2015/04/04 Python
python实现可以断点续传和并发的ftp程序
2016/09/13 Python
python pandas dataframe 行列选择,切片操作方法
2018/04/10 Python
django 使用全局搜索功能的实例详解
2019/07/18 Python
python os.fork() 循环输出方法
2019/08/08 Python
美国糖果店:Sugarfina
2019/02/21 全球购物
采购主管的岗位职责
2013/12/17 职场文书
人力资源管理毕业生自荐信
2014/06/26 职场文书
安全演讲稿开场白
2014/08/25 职场文书
乡镇党的群众路线对照检查材料
2014/09/24 职场文书
2014年售票员工作总结
2014/11/19 职场文书
工资证明格式模板
2015/06/12 职场文书
Java使用httpRequest+Jsoup爬取红蓝球号码
2021/07/02 Java/Android