虚拟环境与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 [环境搭建目 ...
随机推荐
- flutter权限管理permission_handler
flutter权限管理permission_handler 添加依赖 #权限 permission_handler: ^3.0.0 使用 在android的mainfest中添加权限: <use ...
- docker之windows安装¢OS安装
按这个安装 没什么毛病 https://blog.csdn.net/vitaair/article/details/80894890 https://www.runoob.com/docker/ce ...
- Element-UI:级联选择器:Cannot read property 'level' of null"
当级联选择时如果其选择内容需要动态变化时,如果没有选择就不会报错的:而当做出选择后又要动态变化级联选择器内容时,就会报错/ 错误:这个错误的原因是当选择后,再更新内容时,选择器仍会关联原来的数据,导致 ...
- Github 个人首页的 README,这样玩儿~
本文首发于 Ficow Shen's Blog,原文地址: Github 个人首页的 README,这样玩儿~. 内容概览 前言 创建仓库 修改 README 的内容 总结 前言 大家最近有没有发现这 ...
- Java高级开发必会的50个性能优化的细节(珍藏版)
在JAVA程序中,性能问题的大部分原因并不在于JAVA语言,而是程序本身.养成良好的编码习惯非常重要,能够显著地提升程序性能. ● 1. 尽量在合适的场合使用单例 使用单例可以减轻加载的负担,缩短 ...
- Spark Extracting,transforming,selecting features
Spark(3) - Extracting, transforming, selecting features 官方文档链接:https://spark.apache.org/docs/2.2.0/m ...
- Python-变量-字符串
str 字符串如何表示字符串? 单行 单引号 '' 如果字符串中有单引号就需要双引号表示,反之亦然 双引号 " " 换行表示 \ one_str = "简洁胜于优雅&qu ...
- unittest培训后总结记录
今天在给同学们上了自动化测试单元框架unittest之后,突发奇想,要总结下自己今天上的课程内容.于是有了下面的一幕: 首先,今天上课的目标是要学会关于unittest框架的基本使用及断言.批量执行. ...
- sort函数居然能改变元素值?记一次有趣的Bug——四数之和
坐标leetcode: 我想都不想直接深度优先搜索暴力求解: class Solution { public: vector<vector<int>> res; //答案 in ...
- 总线SPI的Arduino库函数
来源参考:https://www.cnblogs.com/MyAutomation/p/9348480.html 总线SPI的Arduino库函数 SPI基本知识 SPI:高速同步串行口.是一种标准的 ...