在Pycharm中創(chuàng)建新項(xiàng)目時(shí)金赦,對(duì)虛擬環(huán)境的設(shè)置拭宁,除了使用默認(rèn)設(shè)置外洛退,也可以手動(dòng)設(shè)置瓣俯,有以下幾種方式。
第一種:勾選繼承選項(xiàng)兵怯。
不再使用“純凈”Python環(huán)境彩匕,而是在本機(jī)Python環(huán)境的基礎(chǔ)上繼承:
創(chuàng)建完成后,發(fā)現(xiàn)venv環(huán)境狀態(tài)如下:
發(fā)現(xiàn)不再是只有pip和setuptools的環(huán)境摇零,而是與系統(tǒng)環(huán)境相同推掸。
注意:這種環(huán)境建立方式,后續(xù)在虛擬環(huán)境中更新和添加包驻仅,將會(huì)影響系統(tǒng)python環(huán)境谅畅。例如:在虛擬環(huán)境中刪除一個(gè)pygame包。
同時(shí)看到系統(tǒng)環(huán)境變量發(fā)生了變化:
同樣的噪服,在虛擬環(huán)境中添加一個(gè)包:
看一下系統(tǒng)環(huán)境中同樣也添加了這個(gè)包:
第二種:同時(shí)勾選繼承和應(yīng)用到所有項(xiàng)目兩個(gè)選項(xiàng)毡泻。
新項(xiàng)目建立后,同樣通過刪除pygame這個(gè)包進(jìn)行測試粘优,發(fā)現(xiàn)這個(gè)項(xiàng)目和系統(tǒng)環(huán)境中的pygame包均已刪除仇味,同時(shí)其他選擇了“繼承”選項(xiàng)的項(xiàng)目中的pygame包也被刪除了。
同理雹顺,添加pygame包丹墨,能夠影響系統(tǒng)環(huán)境及其他的選擇了“繼承”選項(xiàng)的項(xiàng)目。
那么嬉愧,是不是因?yàn)槠渌?xiàng)目選擇了“繼承”才被影響呢贩挣?
第三種:再試一下只勾選“應(yīng)用到所有項(xiàng)目”選項(xiàng)。
操作后發(fā)現(xiàn)和第二種方式?jīng)]有區(qū)別没酣。
第四種:選擇單選框“使用現(xiàn)有的解釋器”王财。
很簡單,就是不創(chuàng)建虛擬環(huán)境裕便,直接使用現(xiàn)有系統(tǒng)環(huán)境绒净,所有操作均針對(duì)系統(tǒng)環(huán)境。
(感覺和第二第三種沒什么區(qū)別偿衰?)
最后挂疆,總結(jié)一下。網(wǎng)上可以搜到關(guān)于使用虛擬環(huán)境venv管理不同項(xiàng)目的各種好處下翎,這里不再多做贅述囱嫩。實(shí)際使用時(shí),可以根據(jù)自己對(duì)項(xiàng)目管理的要求自行判斷漏设。以上僅供參考,若有錯(cuò)誤請(qǐng)指正今妄。