最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Python 3.8.5 的 VScode 開發(fā)環(huán)境簡單配置

2020-08-29 14:39 作者:象喻  | 我要投稿


最近悲劇重裝系統(tǒng),順道把Python從3.7升級到3.8.5了。記錄一下開發(fā)環(huán)境配置。

Python選32位還是64位
  最大區(qū)別在于64位的Python可以使用更多的內(nèi)存,做高內(nèi)存消耗的開發(fā)工作選64位,其它選32位。很早以前優(yōu)先推薦的是32位,當(dāng)時(shí)有些大型模塊(庫)32位的穩(wěn)定性最好,還有一些沒提供64位版本。不過發(fā)展到現(xiàn)在,應(yīng)該沒有這方面問題了,根據(jù)需求選擇就好。另外如果只是自己用的話,在4GB內(nèi)存的系統(tǒng)上裝64位的Python是沒有意義的。

  安裝完P(guān)ython后,如果使用venv虛擬環(huán)境(強(qiáng)烈推薦),需要先設(shè)置一下PowerShell的權(quán)限,在管理員模式啟動PowerShell,運(yùn)行“set-executionpolicy remotesigned”命令。具體原理請看:



Python venv 虛擬環(huán)境

  Python venv虛擬環(huán)境類似于Python的分身,或者說是綠色便攜版的Python。它會在一個(gè)目錄里放入獨(dú)立的Python解釋器和Lib目錄,開發(fā)人員可以把各個(gè)項(xiàng)目里需要的模塊分別放在各自的venv里,互不干擾。我剛用Python的時(shí)候,根本沒打算用venv這種功能,反正都是自己用,模塊(庫)裝一起多省事。6個(gè)月之后我就后悔了,有些庫功能類似,裝上試用一下,后來忘了就一直留下來了。pip list一堆不知道是啥的依賴庫,還不敢刪,列表那叫一個(gè)長。

  Python venv是獨(dú)立目錄,跟源代碼沒有關(guān)系。如果你把源代碼和venv放在一個(gè)目錄里,那么你可以直接把整個(gè)目錄打包備份,或者送給他人(一般可以正常運(yùn)行,但不推薦)。venv如果不想用了,直接刪除目錄就可以了。


創(chuàng)建venv虛擬環(huán)境的方法是在[命令提示符](CMD)或[PowerShell]里,執(zhí)行

python -m venv 目錄路徑

  命令執(zhí)行完畢,進(jìn)入里面的Scripts子目錄,[命令提示符]運(yùn)行activate.bat、[PowerShell]運(yùn)行Activate.ps1進(jìn)入虛擬環(huán)境。此時(shí)你處于venv環(huán)境之中,你的pip命令就只作用于當(dāng)前venv目錄。你對pip的配置(比如更換源)也只適用于當(dāng)前venv,安裝的模塊(庫)都在venv的lib目錄下。輸入deactivate命令退出venv環(huán)境(兩種命令行模式都是這個(gè)命令),不過我一直都是直接關(guān)閉窗口。實(shí)際上除了用pip安裝模塊外,我基本就沒進(jìn)過venv環(huán)境。

  venv的目錄一定要起個(gè)明確的名字,否則venv多了自己用也亂。


VScode的Python開發(fā)配置


  Python開發(fā)需要安裝的VScode擴(kuò)展:

Python擴(kuò)展
安裝完畢后命令面板就多了幾個(gè)Python打頭的新命令。

Pylance擴(kuò)展
微軟官方新出的Python開發(fā)輔助擴(kuò)展,提供語法提示、錯誤檢查等功能。


兩個(gè)擴(kuò)展都安裝完畢后,推薦將源代碼目錄設(shè)為VScode工作區(qū)。

  VScode工作區(qū)是一個(gè)概念,相當(dāng)于其它IDE中的項(xiàng)目(Project),便于管理一個(gè)開發(fā)項(xiàng)目全部的代碼。工作區(qū)一般是源代碼目錄,也可以加入其它位置的目錄。VScode會是在指定目錄里建立一個(gè)XXX.code-workspace文件和一個(gè).vscode目錄(里面包含配置文件),你對工作區(qū)的全部設(shè)置都被記錄在這些文件里。通俗講就是你的項(xiàng)目,包含哪些目錄、需要進(jìn)行哪些設(shè)置,都告訴VScode,然后VScode把這些信息保存在工作區(qū)文件里,每次打開時(shí)讀取工作區(qū)文件,自動幫你進(jìn)行配置。


  無論是否設(shè)置工作區(qū),打開或新建py源代碼文件時(shí),VScode都自動加載Python擴(kuò)展。如果你用了venv就需要先在命令面板(Ctrl+Shift+P)里選擇Python: Select Interpreter,如果沒用venv這步就可以跳過了。

Python: Select Interpreter 這個(gè)命令選擇Python的解釋器,就是用哪個(gè)Python.exe去解析運(yùn)行你的.py源代碼。默認(rèn)情況下是系統(tǒng)Python(所以不用venv的人可以不用設(shè)置),這里要選剛才建立完的venv的Scripts目錄里的python.exe,選擇完畢后,把鼠標(biāo)放在VScode左下角的 Python 3.8.5 文字上,就會提示Python.exe的具體位置。如果你使用了工作區(qū),會自動記錄你的venv python設(shè)置,不同工作區(qū)的venv只需要設(shè)置一次就可以。如果沒使用工作區(qū),下次啟動VScode時(shí)會延用上次選擇的venv,多個(gè)venv就需要手動切換,這樣很容易弄錯,所以還是推薦用工作區(qū)。


  然后VScode還會提示你設(shè)置代碼檢查器(實(shí)時(shí)檢查代碼是否有錯誤),因?yàn)镻ylance具備語法錯誤檢查功能,所以此步驟在命令面板選擇Python: Select Linter命令,選Disable關(guān)閉該功能即可。


  額外說一下Python: Select Linter這個(gè)步驟,以前建議使用fake8代碼檢測器,它是個(gè)Python模塊,需要通過pip自己安裝(并且每個(gè)venv都需要安裝一遍)。現(xiàn)在有Pylance可以省去fake8了,但是兩者是有差別的:

fake8?? ???? 檢查代碼錯誤、代碼浪費(fèi)以及是否符合Python官方推薦的代碼規(guī)范PEP8

Pylance?? ?目前只檢查代碼錯誤

  具體舉例,這些情況fake8會報(bào)錯:improt導(dǎo)入的庫沒有使用;變量創(chuàng)建卻沒有使用(識別不全);代碼里多打了空格;官方建議多打空格和多空一行的地方;程序名和變量名沒有使用英文……

  以上這些都屬于規(guī)范的范疇,而不屬于錯誤,Pylance統(tǒng)統(tǒng)不管。

  所以fake8報(bào)錯,你不管,程序可以正常運(yùn)行。Pylance報(bào)錯必須處理,否則運(yùn)行時(shí)Python也會報(bào)錯。fake8可以手動屏蔽一些報(bào)錯類型,然后在重裝前看了一眼我的屏蔽列表,我決定還是不用了吧。當(dāng)然作為規(guī)范程序員,還是推薦你們用fake8保持良好的編碼習(xí)慣,不要向我學(xué)習(xí)(喵個(gè)咪的這也不規(guī)范、那也不規(guī)范,老子直接用Kotlin好不好,用個(gè)喵的Python?。?/span>。


輔助設(shè)置

至此一個(gè)簡單的Python開發(fā)環(huán)境就配置完畢了。下面是一些輔助設(shè)置,因人而異:

  因?yàn)镻ython語法中縮進(jìn)是有含義的,所以Python代碼的縮進(jìn)非常多,VScode默認(rèn)是用 · 點(diǎn)來提示縮進(jìn)的空格,我個(gè)人是看著比較累,在VScode的設(shè)置里,常規(guī)設(shè)置→Render Whitespace選none即可取消。


  Python經(jīng)常需要整段調(diào)整縮進(jìn),在VScode快捷鍵(左下角齒輪)里,對應(yīng)的設(shè)置叫“行縮進(jìn)”和“行減少縮進(jìn)”。調(diào)整行縮進(jìn)無須全選代碼,當(dāng)前光標(biāo)在哪行就調(diào)整哪行。


  建議安裝一個(gè)括號變色擴(kuò)展,修改成對括號的顏色。這種擴(kuò)展很多,我安裝的是Bracket Pair Colorizer 2,在括號嵌套比較多時(shí)尤為有效。


  indent-rainbow擴(kuò)展可以修改縮進(jìn)的顏色,比如一層縮進(jìn)淡綠色,二層縮進(jìn)淡粉色……但是空行處理的不好,你們可以試試。



小技巧:快捷鍵設(shè)置里右側(cè)有“錄制快捷鍵”功能,可以通過快捷鍵查找對應(yīng)的設(shè)置。



已知問題

  VScode有個(gè)很著名的擴(kuò)展叫Code Runner,可以自動調(diào)用對應(yīng)的解釋器/編譯器運(yùn)行代碼,還可以單獨(dú)運(yùn)行鼠標(biāo)選中的代碼片段。如果使用Python venv需要手動修改Code Runner的配置,我嫌麻煩就直接禁用了,然后發(fā)現(xiàn)VScode的Python擴(kuò)展已經(jīng)自帶了一個(gè)“在終端中運(yùn)行python文件”的按鈕,能自動匹配工作區(qū)的venv。如果沒有更多要求,就沒必要裝Code Runner了。




其它

  額外說下,Python開發(fā)工具里,我還用過JetBrians的產(chǎn)品,PyCharm做也得很好,但沒有達(dá)到IDEA的高度。IDEA強(qiáng)在它懂JAVA,就是說不是根據(jù)正則匹配,或者分析后調(diào)記錄這種方式。IntelliJ IDEA自身能解析JAVA代碼,所以當(dāng)前步驟需要什么,它就提供什么,把不相關(guān)的東西過濾掉。而PyCharm就是一個(gè)傳統(tǒng)IDE,自身并不懂Python,它把代碼里有的東西羅列出來,由人來做決定。然后PyCharm對于非常規(guī)的中文,比如中文模塊名會報(bào)錯(我編程習(xí)慣不主流,但對Python解釋器來說是合法的),所以我選擇了VScode。PyCharm本身作為IDE是足夠勝任的,尤其是做Python框架開發(fā),PyCharm這樣的大型IDE(集成開發(fā)環(huán)境)更適合,而VScode更接近于一個(gè)編輯器。

  順便再多說兩句,VScode最近幾年在大力拓展Java開發(fā)功能,但個(gè)人認(rèn)為在JAVA開發(fā)領(lǐng)域,目前沒有IDEA的對手。與Python不同,JAVA面向的都是大型項(xiàng)目(坑爹的安卓居然選Java),VScode在這個(gè)級別還是太輕了。IntelliJ IDEA就是上手階段有點(diǎn)難,入坑以后就是一片坦途了。另外,PyCharm跟IDEA的界面操作是一樣的,所以JetBrians的產(chǎn)品優(yōu)點(diǎn)就在于,入坑一款、全家通吃。

  至于VScode的入門難度,如果跟JetBrians比較,就等同于沒有難度了:裝完先安裝中文包,然后記住大部分找不到的功能都在“查看”菜單的“命令面板”里(快捷鍵Ctrl+Shift+P)。

Python 3.8.5 的 VScode 開發(fā)環(huán)境簡單配置的評論 (共 條)

分享到微博請遵守國家法律
通榆县| 枣阳市| 无棣县| 沽源县| 沂源县| 绵竹市| 南乐县| 平利县| 延寿县| 屯门区| 交城县| 盐津县| 武乡县| 武功县| 岐山县| 遵义县| 定州市| 湟源县| 湘乡市| 皋兰县| 葫芦岛市| 隆回县| 澄城县| 贺兰县| 廊坊市| 利辛县| 林芝县| 图木舒克市| 丰都县| 平利县| 安国市| 儋州市| 湘阴县| 黑河市| 沙坪坝区| 呼图壁县| 仪陇县| 西乡县| 丹东市| 额济纳旗| 读书|