Python的虛擬環境
電腦系統:windows10
Python 版本:3.8
(注意:python2使用virtualen命令新建虛擬環境,和python3不同,本文用的是python3)
我們安裝過python環境以後,系統會在path路徑下面生成一個python的使用環境路徑,這就是我們python的默認python環境
比如我安裝的python環境路徑爲:C:\Python38
我們在d盤下新建一個項目文件夾D:\py_work\demo
比如我們在這個demo項目要用到web.py框架
那麼我們安裝web.py的命令爲:
pip install web.py
那麼web.py是被安裝到C:\Python38這個默認環境下的
再者我們在d盤下新建第二個項目D:\py_work\demo2
那麼在demo2中用到flask這個項目框架
使用pip install flask安裝
那麼flask這個框架也是安裝到默認項目文件夾C:\Python38下的
那麼我們在d盤下新建第三個項目D:\py_work\demo3
那麼在demo2中用到django這個項目框架
使用pip install django安裝
那麼flask這個框架也是安裝到默認項目文件夾C:\Python38下的
以後以後項目越來越多,demo4,demo5………
以後的項目用到的框架也越來越多,如果有幾十個或者上百個那麼多的話,就會造成碎片化的問題
這裏舉個例子:
比如我喜歡吃火鍋,但是我喜歡吃放蔬菜,這個蔬菜可以比作我們的python框架,但是我約了我的朋友小明,他也喜歡吃火鍋,但是他喜歡吃肉,這個肉也可以比作我們的框架,
於是我們把蔬菜和肉都放到火鍋裏面,這個火鍋就好比是我們python的默認環境,這樣可以滿足我和小明的口味,但是我們的同學張三,李四,又喜歡吃土豆和豆腐,火鍋都能滿足,但是我們的朋友越來越多以後,有幾十個或者上百個的時候,那麼這口鍋就滿足不了我們所有人的要求,甚至可能出現爆鍋的現象。
那麼有什麼辦法可以解決這個問題的,答案是肯定有,於是乎就有吃貨就發明了小火鍋這個吃飯,也就是在每個人面前放一鍋小的火鍋,我的鍋放蔬菜,小明的鍋放肉,張三和李四的鍋放土豆和豆腐。這樣既不影響自己的火鍋的口味,也不用擔心爆鍋的風險。
我們python虛擬環境就像這個小火鍋功能一樣。
具體新建流程如下:
在開始菜單裏面打開命令提示符:
輸入命令d: 進入到d盤
接着輸入cd py_work\demo 命令回車
進入到demo項目文件夾
接着輸入python -m venv venv
Python -m venv這個是新建命令的代碼,後面的一個venv是當前項目虛擬路徑文件夾,這個裏是自己的名稱,我們也可以這樣新建python -m venv abc這個abc和命令裏面的venv是一個意思
我這裏就命令爲venv
輸入命令python -m venv venv回車
可以看到我們demo下面多了個venv的文件夾,這就是demo下的虛擬環境文件夾
激活方法爲在命令終端中輸入 .\venv\Scripts\activate回車,這個操作必須在當前的項目文件夾下,也就是demo。
如下,在文件加下多出了(venv),說明我們就已經在demo這個虛擬環境裏面了
我們在這裏輸入pip list回車,可以看到demo這個虛擬環境下安裝的庫
我們輸入pip install web.py回車安裝web.py這個框架
然後再pip list,我們就看到了虛擬環境下就安裝上了web.py
輸入命令.\venv\Scripts\deactivate.bat
這是退出當前虛擬環境的命令(退出虛擬環境的標誌是前面的(venv)消失)
退出虛擬環境以後,我們進入的是默認的python環境,也就是本文最開始的C:\Python38這個路徑下的環境
輸入pip list查看當前路徑下的框架
我們看到和剛剛的D:\py_work\demo\venv虛擬環境下的框架是不同的,也就是說D:\py_work\demo\venv這個虛擬環境支隊D:\py_work\demo\這個項目文件有影響,不對全局有影響。
以此類推,我們如果要在demo2下使用flask框架,在命令終端輸入如下命令:
cd D:\py_work\demo2\
python -m venv venv(新建虛擬環境venv)
.\venv\Scripts\activate (激活虛擬環境,要和venv文件夾在同一級目錄才行)
.\venv\Scripts\deactivate(退出虛擬環境)
……
總結:
推薦我們的Python學習扣qun:784758214 ,看看前輩們是如何學習的!從基礎的python腳本到web開發、爬蟲、django、數據挖掘等【PDF,實戰源碼】,零基礎到項目實戰的資料都有整理。送給每一位python的小夥伴!每天都有大牛定時講解Python技術,分享一些學習的方法和需要注意的小細節,點擊加入我們的 python學習者聚集地