Flask框架搭建虚拟环境的步骤分析

yipeiwu_com6年前Python基础

本文实例讲述了Flask框架搭建虚拟环境的步骤。分享给大家供大家参考,具体如下:

为什么要搭建虚拟环境?

在开发过程中, 当需要使用python的某些工具包/框架时需要联网安装

比如联网安装Flask框架flask-0.10.1版本

sudo pip install flask==0.10.1

提示:使用如上命令, 会将flask-0.10.1安装到/usr/local/lib/python2.7/dist-packages路径下

问题:如果在一台电脑上, 想开发多个不同的项目, 需要用到同一个包的不同版本, 如果使用上面的命令, 在同一个目录下安装或者更新, 新版本会覆盖以前的版本, 其它的项目就无法运行了.

解决方案 : 虚拟环境

作用 : 虚拟环境可以搭建独立的python运行环境, 使得单个项目的运行环境与其它项目互不影响.

所有的虚拟环境都位于/home/下的隐藏目录.virtualenvs下

如何搭建虚拟环境?

安装虚拟环境的命令 :

sudo pip install virtualenv 
sudo pip install virtualenvwrapper 

安装完虚拟环境后,如果提示找不到mkvirtualenv命令,须配置环境变量:

1、创建目录用来存放虚拟环境

mkdir 
$HOME/.virtualenvs

2、打开~/.bashrc文件,并添加如下

export WORKON_HOME=$HOME/.virtualenvs 
source /usr/local/bin/virtualenvwrapper.sh

3、运行

source ~/.bashrc 

创建虚拟环境的命令 :

提示:如果不指定python版本,默认安装的是python2的虚拟环境

在python2中,创建虚拟环境

mkvirtualenv 虚拟环境名称

例 :

mkvirtualenv py_flask

在python3中,创建虚拟环境

mkvirtualenv -p python3 虚拟环境名称

例 :

mkvirtualenv -p python3 py3_flask

提示 :

创建成功后, 会自动工作在这个虚拟环境上
工作在虚拟环境上, 提示符最前面会出现 “虚拟环境名称”

如何使用虚拟环境?

查看虚拟环境的命令 :

workon 两次tab键

使用虚拟环境的命令 :

workon 虚拟环境名称

例 :使用python2的虚拟环境

workon py_flask

例 :使用python3的虚拟环境

workon py3_flask

退出虚拟环境的命令 :

deactivate

删除虚拟环境的命令 :

rmvirtualenv 虚拟环境名称

例 :删除虚拟环境py3_flask

先退出:deactivate

再删除:rmvirtualenv py3_flask

如何在虚拟环境中安装工具包?

提示 : 工具包安装的位置 :

python2版本下:

~/.virtualenvs/py_flask/lib/python2.7/site-packages/

python3版本下:

~/.virtualenvs/py3_flask/lib/python3.5/site-packages

python3版本下安装flask-0.10.1的包 :

pip install 包名称

例 : 安装flask-0.10.1的包

pip install flask==0.10.1

查看虚拟环境中安装的包 :

pip freeze

希望本文所述对大家基于flask框架的Python程序设计有所帮助。

相关文章

Python迭代器与生成器用法实例分析

本文实例讲述了Python迭代器与生成器用法。分享给大家供大家参考,具体如下: 迭代器,迭代的工具 什么是迭代器? 指的是一个重复的过程,每一次重复称为一次迭代,并且每一次重复的结果是...

python pytest进阶之xunit fixture详解

前言 今天我们再说一下pytest框架和unittest框架相同的fixture的使用, 了解unittest的同学应该知道我们在初始化环境和销毁工作时,unittest使用的是set...

从零学python系列之新版本导入httplib模块报ImportError解决方案

之前用Python 2.7版本的httplib做接口测试时,运行代码都是正常的, 最近开始用Python 3.3之后,再去看以前的代码,发现import httplib出现错误:Unre...

带你了解python装饰器

1.作用域  在python中,作用域分为两种:全局作用域和局部作用域。  全局作用域是定义在文件级别的变量,函数名。而局部作用域,则是定义函数内部。  关于作用域,我要理解两点:a.在...

Python随机生成一个6位的验证码代码分享

1. 生成源码 复制代码 代码如下: # -*- coding: utf-8 -*- import random def generate_verification_code(): &n...