系列文章目录
[Python]目录
文章目录
- 前言
- 1. virtualenv
- 2. python自带的 venv
- 3. virtualenvwrapper
- 4. 虚拟环境中安装Django
- 5. 命令行创建Django项目
pip install virtualenv -i https://pypi.tuna.tsinghua.edu.cn/simple
选择合适的目录创建虚拟环境:
方式一:创建虚拟环境时指定python的版本
virtualenv -p 指定版本python的python.exe所在的路径 虚拟环境名字
virtualenv -p D:\python3.9.7\python.exe test_env01
方式二:创建虚拟环境时使用系统环境变量中配置的python版本
virtualenv 虚拟环境名字
virtualenv test_env02
激活并进入使用 virtualenv 创建的虚拟环境需要到虚拟环境目录中的Scripts目录下运行activate命令激活进入虚拟环境。
激活进入使用指定版本python创建的虚拟环境:
cd test_env01\Scripts
activate
查看虚拟环境中的python版本和安装的第三方包:
python -V
pip list
激活并进入使用系统环境变量中配置的python版本创建的虚拟环境:
cd test_env02\Scripts
activate
查看虚拟环境中的python版本和安装的第三方包:
python -V
pip list
退出使用 virtualenv 创建的虚拟环境需要到虚拟环境目录中的Scripts目录下运行deactivate.bat文件退出虚拟环境。
decativate.bat
直接删除虚拟环境对应的文件夹即可。
Python3.4以上的版本可以直接使用自带的venv创建虚拟环境,不需要额外安装virtualenv包
选择合适的目录创建虚拟环境:
方式一:使用指定python版本创建虚拟环境
指定python版本的python.exe路径 -m venv 虚拟环境名
D:\python3.9.7\python.exe -m venv test_env03
方式二:使用系统环境变量中配置的python版本创建虚拟环境
python -m venv 虚拟环境名
python -m venv test_env04
激活并进入使用python自带的 venv 创建的虚拟环境需要到虚拟环境目录中的Scripts目录下运行activate命令激活进入虚拟环境。
激活进入使用指定版本python创建的虚拟环境:
cd test_env03\Scripts
activate
查看虚拟环境中的python版本和安装的第三方包:
python -V
pip list
激活并进入使用系统环境变量中配置的python版本创建的虚拟环境:
cd test_env04\Scripts
activate
查看虚拟环境中的python版本和安装的第三方包:
python -V
pip list
退出使用python自带的 venv 创建的虚拟环境需要到虚拟环境目录中的Scripts目录下运行deactivate.bat文件退出虚拟环境。
decativate.bat
直接删除虚拟环境对应的文件夹即可。
使用 virtualenvwrapper 可以对虚拟环境进行统一管理,但是只能统一管理 virtualenvwrapper 创建的虚拟环境,使用 virtualenvwrapper 可以在任意位置查看现有的所有虚拟环境,可以在任意位置进入指定的虚拟环境。
pip install virtualenvwrapper -i https://pypi.tuna.tsinghua.edu.cn/simple
命令 | 用法 |
---|---|
workon | 打印所有的virtualenvwrapper创建的虚拟环境 |
workon 虚拟环境名 | 进入指定的虚拟环境 |
deactivate | 退出当前虚拟环境 |
mkvirtualenv 虚拟环境名 | 创建虚拟环境 |
rmvirtualenv 虚拟环境名 | 删除指定的虚拟环境 |
lsvirtualenv | 列出所有的虚拟环境 |
cdvirtualenv | 进入到当前虚拟环境的目录 |
cdsitepackages | 进入当前虚拟环境的site-packages目录中 |
lssitepackages | 查看当前虚拟环境site-packages目录中的内容 |
方式一:创建虚拟环境时指定python的版本
mkvirtualenv -p 指定python版本的python.exe路径 虚拟环境名
mkvirtualenv -p D:\python3.10.0\python.exe test_env05
使用 virtualenvwrapper 创建虚拟环境后,会自动进入新创建的虚拟环境。
方式二:创建虚拟环境时使用系统环境变量中配置的python版本
mkvirtualenv 虚拟环境名
mkvirtualenv test_env06
使用 virtualenvwrapper 创建的虚拟环境默认的存放路径为 C:\Users\ Windows用户名 \Envs。
virtualenvwrapper 只能统一管理查看 virtualenvwrapper 创建的虚拟环境。
workon 虚拟环境名
进入使用指定版本python创建的虚拟环境:
workon test_env05
查看虚拟环境中的python版本和安装的第三方包:
python -V
pip list
进入使用系统环境变量中配置的python版本创建的虚拟环境:
workon test_env06
查看虚拟环境中的python版本和安装的第三方包:
python -V
pip list
cdvirtualenv
cdsitepackages
lssitepackages
deactivate
rmvirtualenv 虚拟环境名
rmvirtualenv test_env06
virtualenvwrapper 创建的虚拟环境默认存放在C:\Users\用户名\envs目录下。
我的电脑(计算机)右键 =》 属性 =》高级系统设置 =》 环境变量 =》新建系统变量
要让 virtualenvwrapper 能够管理所有的虚拟环境,需要将所有的虚拟环境目录剪切粘贴到 virtualenvwrapper 虚拟环境的存放目录中。
进入用于创建django项目的虚拟环境
在该虚拟环境中安装Django:
pip install django -i https://pypi.tuna.tsinghua.edu.cn/simple
在当前虚拟环境安装的第三方包不会对其他虚拟环境造成影响,即每个虚拟环境相互独立互不影响。
创建Django项目的命令:
django-admin startproject 项目名
在虚拟环境 test_env05 对应的目录下新建Django项目:
新建Django项目的项目存放目录也可自行选择,创建Django项目时处于虚拟环境下即可。
python manage.py help
命令进行查看。__init__
.py:python包的初始化文件创建子应用的命令:
python manage.py startapp 子应用名
在项目的根目录下创建子应用:
__init__
.py:python包的初始化文件
如果没有自动识别并配置可以手动为打开的django项目配置虚拟环境:
python manage.py runserver [指定项目运行时的端口号]
python manage.py runserver 8888
浏览器访问 http://127.0.0.1:8888/
如果没指定项目运行时的端口号,则项目默认运行的端口号为8000
python manage.py runserver
浏览器访问 http://127.0.0.1:8000/
项目的子应用在项目的全局配置文件中进行注册:
在项目的全局配置文件中找到注册子应用的配置项:
在注册子应用的配置项中的最后添加子应用名:
直接写子应用名,会自动寻找子应用目录下apps.py文件中的“子应用名Config”类型
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'子应用名',
]
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'subapp01', # 注册子应用 subapp01
]
注册子应用时,采用完整的写法:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'子应用名.apps.子应用名Config'
]
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'subapp01.apps.Subapp01Config', # 注册子应用 subapp01
]