99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁(yè)精彩閱讀電腦中存在多個(gè)版本的Python如何不沖突?
電腦中存在多個(gè)版本的Python如何不沖突?
2022-05-05
收藏

作者:小K

來(lái)源:麥?zhǔn)寰幊?/span>

Python學(xué)習(xí)第一步,安裝Python環(huán)境,

別看是第一步,很多在職Python程序員可能都弄不太清楚環(huán)境變量怎么配?

如何安裝多版本的Python并與之共存?

?

如果你的工作涉及到Python多版本之間開(kāi)發(fā)或測(cè)試,那么請(qǐng)收藏本文,

如果你安裝完P(guān)ython發(fā)現(xiàn)pip命令不能用,也請(qǐng)收藏本文。

?

「本文將解決兩個(gè)問(wèn)題,讓大家能明白Python環(huán)境變量該怎么配置?!?/span>

準(zhǔn)備工作

  1. 沒(méi)有安裝過(guò)任何Python的Win10的電腦(筆者使用虛擬機(jī)演示)
  2. 兩個(gè)不同版本的Python安裝包
  3. 在某個(gè)盤(pán)中創(chuàng)建一個(gè)Python文件夾,然后在文件夾中創(chuàng)建Python36與Python310兩個(gè)子文件夾。
  4. 先安裝3.6的,按版本號(hào)裝至Python36與Python310兩個(gè)文件夾。
電腦中存在多個(gè)版本的Python如何不沖突?
電腦中存在多個(gè)版本的Python如何不沖突?
電腦中存在多個(gè)版本的Python如何不沖突?
電腦中存在多個(gè)版本的Python如何不沖突?

5. 按照第4步的方法安裝3.10。

電腦中存在多個(gè)版本的Python如何不沖突?

?

按照以上方法安裝完了之后,試試在cmd命令輸入Python,查看下當(dāng)前解釋器版本號(hào):

cmd的環(huán)境是Python3.10的,因?yàn)榈诙伟惭b時(shí)把第一次3.6的Path覆蓋掉了。

「假如安裝過(guò)程中沒(méi)有勾選add Path,會(huì)造成python與pip兩個(gè)命令都無(wú)法使用。」

「假如安裝過(guò)程中第二次安裝時(shí)覆蓋了第一次的安裝的目錄,那么pip命令和Python命令會(huì)錯(cuò)亂?!?/span>

?

分割Python3.6與Python3.10的cmd解釋環(huán)境

我們先查看下,當(dāng)前系統(tǒng)的環(huán)境變量(按照?qǐng)D片依次點(diǎn)擊):

隨便打開(kāi)個(gè)文件夾,右鍵此電腦;

電腦中存在多個(gè)版本的Python如何不沖突?
電腦中存在多個(gè)版本的Python如何不沖突?
電腦中存在多個(gè)版本的Python如何不沖突?
電腦中存在多個(gè)版本的Python如何不沖突?
電腦中存在多個(gè)版本的Python如何不沖突?

?

由上圖可知,我們的環(huán)境變量中Python3.10與Python3.6都是存在的,并沒(méi)有缺失。

那么我們不需要去更改它。(這是正常的情況,如果你跟我的不一樣,就按照這個(gè)格式新建你的環(huán)境變量)

?

打開(kāi)PythonPython36文件夾,

把Python和Pythonmw改成 Python36和Pythonmw36;

電腦中存在多個(gè)版本的Python如何不沖突?

再打開(kāi)PythonPython310文件夾,

把Python和Pythonmw改成 Python310和Pythonmw310;

電腦中存在多個(gè)版本的Python如何不沖突?

在cmd命令行分別輸入,python36和python310進(jìn)行測(cè)試;

電腦中存在多個(gè)版本的Python如何不沖突?

「Python3.6與Python3.10的cmd解釋環(huán)境分割完畢」

分割pip命令

經(jīng)過(guò)我們上面的一系列努力,兩個(gè)版本的pip都已經(jīng)廢了。

電腦中存在多個(gè)版本的Python如何不沖突?

先使用命令:

python36 -m pip install --upgrade pip --force-reinstall 

python310 -m pip install --upgrade pip --force-reinstall 

拯救下它們。

電腦中存在多個(gè)版本的Python如何不沖突?

進(jìn)入Python36scripts

電腦中存在多個(gè)版本的Python如何不沖突?

把Python36scripts中的pip3改成pip36,

電腦中存在多個(gè)版本的Python如何不沖突?

再把Python310scripts中的pip3改成pip310,

電腦中存在多個(gè)版本的Python如何不沖突?

分別試下pip36 list和pip310 listpip命令也完美分割,

電腦中存在多個(gè)版本的Python如何不沖突?

在Vscode中使用不同Python版本的解釋環(huán)境

運(yùn)行一個(gè)嶄新的Vscode,

電腦中存在多個(gè)版本的Python如何不沖突?

依次點(diǎn)擊,安裝好Python的插件,

電腦中存在多個(gè)版本的Python如何不沖突?

打開(kāi)一個(gè)py文件,

電腦中存在多個(gè)版本的Python如何不沖突?

點(diǎn)擊右下角的選擇解釋器,

電腦中存在多個(gè)版本的Python如何不沖突?

選擇前面安裝Python的路徑

電腦中存在多個(gè)版本的Python如何不沖突?
電腦中存在多個(gè)版本的Python如何不沖突?

Python3.6環(huán)境 OK,

電腦中存在多個(gè)版本的Python如何不沖突?

Python3.10環(huán)境 OK,

電腦中存在多個(gè)版本的Python如何不沖突?

數(shù)據(jù)分析咨詢請(qǐng)掃描二維碼

若不方便掃碼,搜微信號(hào):CDAshujufenxi

數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機(jī)數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進(jìn)行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個(gè)參數(shù)驗(yàn)證碼對(duì)象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個(gè)配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺(tái)檢測(cè)極驗(yàn)服務(wù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時(shí)表示是新驗(yàn)證碼的宕機(jī) product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說(shuō)明請(qǐng)參見(jiàn):http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計(jì)時(shí)完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請(qǐng)輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請(qǐng)輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }