python別通過復(fù)制遷移虛擬環(huán)境env Win將遇到Fatal error in launche 應(yīng)該這樣操作文二

文一介紹了在遇到在win10環(huán)境安裝python3.11(3.9)創(chuàng)建完成虛擬環(huán)境,模擬更換下開發(fā)環(huán)境,將生成的通過復(fù)制虛擬環(huán)境(拷貝)方式進(jìn)行移動(dòng)和改變位置,執(zhí)行虛擬環(huán)境內(nèi)的pip install moudlename,出現(xiàn)Fatal error in launche錯(cuò)誤。
文二將跟各位一起查看下網(wǎng)絡(luò)的一些方案來說明此Windows復(fù)制的方式不夠方便,讓人難受(不行)的點(diǎn)。

一:https://blog.csdn.net/weixin_43955917/article/details/105723628
一是中心思想是修改venv\Scripts\activate、venv\Scripts\activate.bat、venv\Scripts\activate等調(diào)到到新的路徑。
二:https://blog.csdn.net/weixin_34175509/article/details/91946762
二是同樣是修改activate有關(guān)文件,以及修改venv\Scripts\easy_install-script.py、venv\Scripts\easy_install-script.py文件
一嘗試修改3個(gè)文件,pip.exe運(yùn)行依舊會(huì)錯(cuò)誤。唯一的作用在于通過activate.bat進(jìn)入虛擬環(huán)境,python.exe能夠被找到。
為什么pip.exe能夠被運(yùn)行很重要?它是python的包管理器,想要用別人的輪子,沒有這個(gè)包管理器,真的不方便。
二不妥在于,文中未說明測試的操作系統(tǒng)和配python的版本。在測試的python3.11和win10環(huán)境下,打開虛擬環(huán)境此目錄,并未看到*.py,均是被編譯成了exe二進(jìn)制文件。


三:https://blog.csdn.net/qq446252221/article/details/91042163
三指出個(gè)關(guān)鍵點(diǎn)編譯后的exe腳本。假設(shè)文本編輯器查看pip.exe,文件中寫出是有個(gè)絕對(duì)路徑,這也是為什么虛擬環(huán)境調(diào)整后路徑將無法使用。
當(dāng)然不要嘗試文本編輯器修改這個(gè)路徑,修改后的pip.exe將變成無效文件

上述我看到網(wǎng)絡(luò)上常見的修改方式,整體試下下均不能幫助實(shí)現(xiàn)在Windows復(fù)制方式遷移虛擬環(huán)境。

這里補(bǔ)充一個(gè)試驗(yàn):這段錯(cuò)誤的提示是無法找到此python.exe。

如果我們新建建立此路徑,并將python.exe重新移動(dòng)回新的路徑。

再次運(yùn)行pip.exe,此時(shí)能夠運(yùn)行不在有錯(cuò)誤。

由于在Windows,它很多的文件都是編譯成exe,二進(jìn)制文件內(nèi)帶有python的絕對(duì)路徑引用。采用復(fù)制(移動(dòng))后路徑被調(diào)整,導(dǎo)致無法引用到路徑,從而引發(fā)錯(cuò)誤。
當(dāng)然如果能夠重新構(gòu)建這些路徑或許能夠?qū)崿F(xiàn),這樣復(fù)制方式遷移表現(xiàn)復(fù)雜,還是采用《Python編程-從入門到實(shí)踐》書中的方式或改良方式來遷移虛擬環(huán)境比較妥當(dāng)。
python別通過復(fù)制遷移虛擬環(huán)境env Win將遇到Fatal error in launche 應(yīng)該這樣操作文二的評(píng)論 (共 條)
