每日焦點!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)境(拷貝)方式進行移動和改變位置,執(zhí)行虛擬環(huán)境內(nèi)的pip install moudlename,出現(xiàn)Fatal error in launche錯誤。
文二將跟各位一起查看下網(wǎng)絡(luò)的一些方案來說明此Windows復(fù)制的方式不夠方便,讓人難受(不行)的點。
(資料圖片僅供參考)
一: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個文件,pip.exe運行依舊會錯誤。唯一的作用在于通過activate.bat進入虛擬環(huán)境,python.exe能夠被找到。
為什么pip.exe能夠被運行很重要?它是python的包管理器,想要用別人的輪子,沒有這個包管理器,真的不方便。
二不妥在于,文中未說明測試的操作系統(tǒng)和配python的版本。在測試的python3.11和win10環(huán)境下,打開虛擬環(huán)境此目錄,并未看到*.py,均是被編譯成了exe二進制文件。
三:https://blog.csdn.net/qq446252221/article/details/91042163
三指出個關(guān)鍵點編譯后的exe腳本。假設(shè)文本編輯器查看pip.exe,文件中寫出是有個絕對路徑,這也是為什么虛擬環(huán)境調(diào)整后路徑將無法使用。
當(dāng)然不要嘗試文本編輯器修改這個路徑,修改后的pip.exe將變成無效文件
上述我看到網(wǎng)絡(luò)上常見的修改方式,整體試下下均不能幫助實現(xiàn)在Windows復(fù)制方式遷移虛擬環(huán)境。
這里補充一個試驗:這段錯誤的提示是無法找到此python.exe。
如果我們新建建立此路徑,并將python.exe重新移動回新的路徑。
再次運行pip.exe,此時能夠運行不在有錯誤。
由于在Windows,它很多的文件都是編譯成exe,二進制文件內(nèi)帶有python的絕對路徑引用。采用復(fù)制(移動)后路徑被調(diào)整,導(dǎo)致無法引用到路徑,從而引發(fā)錯誤。
當(dāng)然如果能夠重新構(gòu)建這些路徑或許能夠?qū)崿F(xiàn),這樣復(fù)制方式遷移表現(xiàn)復(fù)雜,還是采用《Python編程-從入門到實踐》書中的方式或改良方式來遷移虛擬環(huán)境比較妥當(dāng)。
關(guān)鍵詞: 虛擬環(huán)境 絕對路徑 二進制文件