Pipenv一鍵搭建python虛擬環(huán)境的方法
由于python2和python3在部分語法上不兼容, 導(dǎo)致有人打趣道:"Python2和Python3是兩門語言"
對于初學(xué)者而言, 如果同時安裝了python2和python3, 那運(yùn)行python程序就可能會遇到2和3混用的尷尬
為解決python不同版本混用的尷尬,避免污染系統(tǒng)python的依賴包環(huán)境, 我們需要創(chuàng)建虛擬環(huán)境, 將python2和python3隔離使用
pipenv的優(yōu)勢:
以前我們搭建虛擬環(huán)境需要學(xué)習(xí)使用virtualenv和virtualenvwrapper,在虛擬環(huán)境內(nèi)管理軟件依賴包需要學(xué)習(xí)使用pip, 而有了pipenv, 前面幾個就可以不用學(xué)了...
以前我們需要將虛擬環(huán)境依賴包的導(dǎo)出為 requirements.txt , 一旦依賴包變動,就要重新導(dǎo)出,而pipenv會自動幫我們生成 Pipfile 和 Pipfile.lock , Pipfile會隨著項(xiàng)目,當(dāng)我們安裝時只需在 Pipfile 和 Pipfile.lock 所在的目錄下運(yùn)行 pipenv install
安裝pipenv
方法一: ubuntu用apt安裝
sudo apt install software-properties-common python-software-properties sudo add-apt-repository ppa:pypa/ppa sudo apt update sudo apt install pipenv
方法二: windows用pip安裝
pip install pipenv
方法三: MacOS直接使用brew安裝
brew install pipenv
快速創(chuàng)建并進(jìn)入虛擬環(huán)境
前提條件: 系統(tǒng)已安裝python2和python3
# 創(chuàng)建python3環(huán)境 pipenv --three # 創(chuàng)建python2環(huán)境 pipenv --two
# 在上一步新建環(huán)境的目錄下,運(yùn)行此命令才有效 pipenv shell
小技巧: 如果子級目錄的父級目錄已經(jīng)創(chuàng)建過虛擬環(huán)境, 則子級目錄無法創(chuàng)建虛擬目錄(子級目錄無法生成Pipfile, 子級默認(rèn)會使用父級的虛擬環(huán)境), 如果確實(shí)需要在子級目錄創(chuàng)建獨(dú)立的虛擬環(huán)境,可以運(yùn)行 pipenv --where 獲取父級虛擬環(huán)境的名字, 根據(jù)虛擬環(huán)境的前半部分名字, 確定父級目錄的位置, 然后刪除父級目錄下的 Pipfile , Pipfile.lock , 運(yùn)行 exit 退出父級虛擬環(huán)境,然后回到子目錄,運(yùn)行 pipenv --three 創(chuàng)建子目錄的虛擬環(huán)境即可
在虛擬環(huán)境管理依賴包
安裝依賴包 yagmail requests
pipenv install yagmail requests
查看已安裝軟件
pipenv graph

刪除依賴包yagmail
pipenv uninstall yagmail
退出虛擬環(huán)境
exit
擴(kuò)展命令(不看也沒關(guān)系)
查看虛擬環(huán)境python解釋器所在位置
pipenv --py
查看虛擬環(huán)境所在位置
pipenv --venv
使用更底層的命令 pip freeze
pipenv run pip freeze
只在安裝開發(fā)階段使用的軟件包(和npm類似)
pipenv install pytest --dev
安裝Pipfile.lock的所有包(完整移植開發(fā)環(huán)境)
pipenv sync
小結(jié):
pipenv借鑒了npm管理包的方式, 與virtualenv和virtualenvwrapper相比, pipenv對新書要更友好一些,推薦學(xué)習(xí)~
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python利用lxml庫實(shí)現(xiàn)XML處理
lxml庫是Python中處理XML和HTML文檔的強(qiáng)大庫,提供了豐富的API以進(jìn)行各種操作,本文將討論如何使用lxml庫,包括如何創(chuàng)建XML文檔,如何使用XPath查詢,以及如何解析大型XML文檔,需要的可以參考下2023-08-08
Python Logging 日志記錄入門學(xué)習(xí)
這篇文章主要介紹了Python Logging 日志記錄入門學(xué)習(xí),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-06-06
Python設(shè)置Word全局樣式和文本樣式的示例代碼
這篇文章主要介紹了如何利用Python對Word內(nèi)容進(jìn)行各種樣式的設(shè)置,讓其能夠看起來更加的美觀。文中的示例代碼講解詳細(xì),需要的可以參考一下2022-05-05
Python中TCP協(xié)議的探索與實(shí)例解析
網(wǎng)絡(luò)編程在當(dāng)今數(shù)字化世界中扮演著至關(guān)重要的角色,本文將帶你深入了解 Python 中的 TCP 協(xié)議,介紹網(wǎng)絡(luò)編程的基礎(chǔ)知識,并提供豐富的示例代碼,希望對大家有所幫助2023-12-12

