虚拟环境与local_settings
虚拟环境(virtualenv)
对于同时管理多个不同的项目时,使用虚拟环境是必须的。
虚拟环境就是用来为一个项目新建一个全新的纯净的python运行环境,该环境与系统的python环境相互隔离,且虚拟环境之间也相互隔离。该虚拟环境下若想使用某一个已经在系统环境中安装过的模块,只能通过在该虚拟环境下重新安装该模块来使用。无法使用到别的环境下的模块。
各个虚拟环境之间是相互隔离的,如果不使用虚拟环境,管理多个项目时可能会出现的问题:
项目A使用的某个模块的版本和项目B的不一致,而系统环境中只能存在一个版本的模块,那么要想管理这两个项目就很麻烦。
使用虚拟环境,只需要在各个项目所在的虚拟环境下安装各自需要的模块即可,当要运行项目A的时候,只需切换到项目A的虚拟环境执行即可,项目B也是如此。
1、virtualenv的安装
pip install virtualenv
2、创建虚拟环境
a、打开终端,进入存放虚拟环境的目录
b、执行:virtualenv 环境名称,即可在当前目录下生成一个虚拟环境的文件夹
如果需要指定该环境使用的python版本:
virtualenv 环境名称 --python=python3.6
3、激活虚拟环境
a、打开终端,进入指定虚拟环境的文件夹下的Scripts目录
b、执行activate即可

执行成功后,命令提示符前方就会出现“(虚拟环境名称)”,这就意味着当前进入了该虚拟环境。
在该虚拟环境下,做任何操作都不会影响到系统环境以及其他的虚拟环境。比如在该环境下,安装的模块只会存在于当前环境,一旦退出当前环境,回到系统环境或者进入其他虚拟环境,除非其他这些环境下已经存在有该模块,否则是无法调用到这个模块的。
4、退出虚拟环境
激活虚拟环境后,在任何目录下,执行:deactivate,即可退出当前虚拟环境

5、搭建项目环境
pycharm搭建django项目在指定虚拟环境下,只需要将django项目使用的解释器设置成指定虚拟环境下的python解释器即可。
补充:
针对一个环境下所使用到的第三方库/模块,可以通过:
pip freeze > requirements.txt
将当前环境下的所有使用到的第三方库/模块以及版本,一同写入requirements.txt中
在其他电脑上搭建项目环境时,就可以通过:
pip install -r requirements.txt
在指定环境下安装requirements.txt中所有的第三方库/模块
本地配置(local_settings)
django项目下的同名目录下的settings文件,可以用来对django项目做一些基本配置。
在与他人协作开发过程中,对于每个人来说可能用的配置都不一样,比如本地数据库的配置。
因此,可以在该目录下创建一个local_settings文件,该文件内可以重写settings中的一些配置,作为个人的本地配置。这样在与他人写作开发时,每个人只需要配置好自己的local_settings即可。
然后在settings文件中的末尾使用以下语句引入即可:
try:
from .local_settings import *
except ImportError:
pass
引入进来的*表示,将会覆盖当前名称空间中的同名变量的值。也就是说,项目运行过程中使用到这些变量都是定义在local_settings中的值。
虚拟环境与local_settings的更多相关文章
- Mac-OSX的Python3.5虚拟环境下安装Opencv
Mac-OSX的Python3.5虚拟环境下安装Opencv 1 关键词 关键词:Mac,OSX,Python3.5,Virtualenv,Opencv 2 概述 本文是一篇 环境搭建 的基础 ...
- python包使用指南-创建虚拟环境
创建虚拟环境的两种方法: 1.virtualenv 2.venv http://packaging.python.org/en/latest/installing/#creating-virtual- ...
- python 虚拟环境
python3 目录venv创建为虚拟环境,并激活. $ python3 -m venv ./venv$ source venv/bin/activate -m: -m mod : run libra ...
- [Django 1]安装Django并创建虚拟虚拟环境项目
1)安装Django 使用pip来安装,命令如下: pip3 install Djangopip install Django(安装到python2)python3 -m pip install Dj ...
- python虚拟环境
sudo apt-get install python-virtualenv virtualenv --no-site-packages files cd files source ./bin/act ...
- (zhuan)Python 虚拟环境:Virtualenv
Python 虚拟环境:Virtualenv zhuanzi: http://liuzhijun.iteye.com/blog/1872241 virtualenv virtualenv用于创建独立的 ...
- Python 中的虚拟环境
检查系统是否安装了virtualenv: $ virtualenv --version 创建虚拟环境venv(名字可以随便取,一般为venv): $ virtualenv venv 使用虚拟环境ven ...
- Windows下面如何建立多个Django虚拟环境
Linux 安装请见另一篇博客 http://www.cnblogs.com/zhaoyingjie/p/6180758.html 1.安装 virtualenv 2.安装virtualenvwrap ...
- 用 pyvenv 创建几个不相互影响的python虚拟环境
IN MY UBUNTU python2的环境控制: sudo apt-get install virtualenv 创建: virtualenv --no-site-packages [环境搭建目 ...
随机推荐
- Node.js 从零开发 web server博客项目[express重构博客项目]
web server博客项目 Node.js 从零开发 web server博客项目[项目介绍] Node.js 从零开发 web server博客项目[接口] Node.js 从零开发 web se ...
- 设计模式之Command
由于学习hystrix的使用和原理 所以就学习了command模式https://www.jdon.com/designpatterns/command.htm Command模式是最让我疑惑的一 ...
- JAVA8--流处理和optional
转载自https://www.cnblogs.com/invoker-/p/6896865.html 流与集合 众所周知,日常开发与操作中涉及到集合的操作相当频繁,而java中对于集合的操作又是 ...
- Java 里的 for (;;) 与 while (true),哪个更快?
在 JDK8u 的 jdk 项目下做个很粗略的搜索: mymbp:/Users/me/workspace/jdk8u/jdk/src$ egrep -nr "for \\(\\s?;\\s? ...
- Flutter学习三之搭建一个简单的项目框架
上一篇文章介绍了Dart的语法的基本使用,从这篇文章开始,开发一个基于玩Android网站的app.使用的他们开放的api来获取网站数据. 根据网站的结构,我们app最外层框架需要添加一个底部导航栏, ...
- CVE-2020-0796(Windows SMBv3) RCE漏洞复现
CVE-2020-0796 攻击机:win10:192.168.205.1 靶机win10:192.168.205.132 关闭defender防火墙 0x01 影响版本 Windows 10 190 ...
- 有没有异常处理翻车过的,绩效还被打了C
絮叨 因为程序异常处理问题,就在前几天龙叔的服务挂了几秒钟. 完了,马上季度末打绩效,竟然在这里翻车了,心如刀绞啊. 虽然没有影响到用户体验,但是找到问题并解决掉问题是工程师日常追求之一. 作为一个优 ...
- jdk在linux下安装、配置环境变量
1.jdk下载: 下载地址:https://www.oracle.com/java/technologies/javase-downloads.html 2. 3. 4.解压jdk到/usr/loca ...
- 简单两步实现Android app 本地设置信息的保存与调用
调用值 SharedPreferences preferences = this.getSharedPreferences("mspda", 0); lblVer.setText( ...
- 【原创】xenomai内核解析--实时IPC概述
版权声明:本文为本文为博主原创文章,转载请注明出处.如有问题,欢迎指正.博客地址:https://www.cnblogs.com/wsg1100/ 目录 1.概述 2.Real-time IPC 2. ...