我們很高興地宣佈,2022 年 10 月釋出的適用於 Visual Studio Code Python 和 Jupyter 擴充套件現已推出!
此版本包括以下改進:
- 使用新的建立環境命令簡化專案設定
- 現在可以為 Pylance 提供包含、排除和忽略路徑設定
- 預釋出的 autopep8 擴充套件
- Python 檔案單元格摺疊
- 標記和引數化筆記本單元格
- Pylance 的新型別檢查狀態按鈕
- Grace Hopper 會議和開源日
如果您有興趣,可以在我們的更新日誌中檢視 Python、Jupyter 和 Pylance 擴充套件的完整改進記錄。
使用新的建立環境命令簡化專案設定
我們新增了一個新的命令,可自動為您的 Python 工作區建立虛擬環境或 Conda 環境。您可以透過命令皮膚觸發命令(Ctrl + Shift + P⌘ + ⇧ + P),選擇是要使用 venv 還是 Conda 環境建立新的虛擬環境,最後為您的專案選擇所需的直譯器。該命令還將安裝專案資料夾中的 requirements/dependencies 檔案中列出的必要包,例如 requirements.txt、pyproject.toml 或 environment.yml。我們希望這個新功能能夠簡化環境建立的過程,並鼓勵使用虛擬環境編寫程式碼以獲得最佳實踐。
現在可以為 Pylance 提供包含、排除和忽略的路徑
Pylance 新增了一項增強功能,允許使用者透過 VS Code 設定包含、排除和忽略路徑。在每個設定中,您可以指定 Pylance 診斷輸出應包含、排除或忽略的目錄或檔案的路徑。
在 VS Code 設定皮膚中查詢這些新設定:
- python.analysis.include
- python.analysis.exclude
- python.analysis.ignore
預釋出的 autopep8 擴充套件
我們繼續向我們不斷增長的擴充套件庫新增一個新的 autopep8 擴充套件!與我們的 pylint、black、isort 和 flake8 擴充套件一樣,autopep8 擴充套件使用語言伺服器協議來提供格式支援。由於它附帶最新版本的 autopep8,因此不需要在 Python 環境中安裝它。
您現在可以透過從市場下載 autopep8 擴充套件。如果您有任何問題或功能請求,您可以將它們提交在 autopep8 擴充套件的 GitHub 儲存庫中。
Python檔案單元格摺疊
現在可以在 Python 檔案中摺疊所有用 # %% 標記表示的“單元格” 。這使得摺疊程式碼部分變得很容易,這樣您就可以檢視您的 Python 檔案而無需大量滾動。
標記和引數化筆記本單元格
您現在可以直接在筆記本編輯器中新增標籤和引數化筆記本單元格,而無需開啟文件的 json 格式——這是 Jupyter 擴充套件中提供的功能。此功能可以為 papermill 或 nbconvert 的筆記本提供引數化等功能,以便直接從您的筆記本建立幻燈片!
Pylance 的型別檢查狀態按鈕
您現在可以透過編輯器底部狀態列中的語言狀態按鈕為 Pylance 設定型別檢查模式。此設定可以在 off、basic 和 strict 之間切換。您可以在 Visual Studio Code Docs 中瞭解有關型別檢查設定和其他 Python 語言伺服器設定的更多資訊。
Grace Hopper 會議和開源日
9月16日,我們團隊參加了開源日!開源日是一個全天的駭客馬拉松,也是開源界最大的女性慶祝活動 Grace Hopper 慶祝活動的一部分。在本次活動中,與會者與同行以及經驗豐富的導師合作,為多個開源專案做出貢獻。
我們要感謝與我們一起參加本次活動的所有導師,以及為我們的專案做出貢獻的每一位參與者:
- avaniatre4 : 按字母順序重新排序 package.json 中的設定 (vscode-flake8#43 )
- Radhika Aggarwal:在觸發“tab before keyword”警告時,為格式化檔案新增了code action(vscode-flake8#44)
- kate-kee : 按字母順序重新排序 package.json 中的設定 ( vscode-pylint#188 )
- jjmacklin:在觸發“trailing newlines”警告時為格式化檔案新增了code action(vscode-pylint#189)
- ChinazoOnwukaike:刪除“set as interpreter”的程式碼鏡頭 ( vscode-python#19853 )
有許多“快速修復”功能問題可供希望做出貢獻的人使用!我們鼓勵 Python 社群以任何方式貢獻和維護擴充套件。您可以在 pylint、flake8、isort 和 black 儲存庫中找到標記為 good first issue 的問題。要了解其他貢獻方式,請檢視 Dawn Wages 的部落格文章,瞭解如何與 Microsoft 的 Pythonistas 一起為開源做出貢獻!
其他更改和增強
我們還新增了一些小的增強功能並修復了使用者請求的問題,這些功能應該可以改善您在 Visual Studio Code 中使用 Python 和 Jupyter Notebooks 的體驗。一些顯著的變化包括:
- 現在可以在筆記本大綱檢視中檢測和顯示 Markdown 單元格中的 HTML 標題
- 改進了互動式視窗的命令互動。interactive.input.focus 命令現在將焦點放在最近使用的互動式視窗的輸入框上。例如,您可以 Ctrl + Up Arrow 在互動視窗中選擇最後執行的“單元格”並 DD 刪除該單元格(使用自定義鍵盤快捷鍵)。您還可以 Ctrl + Z 撤消刪除單元格命令。
- “Remove all unused imports”程式碼操作現在僅刪除頂級匯入,“Remove unused import”程式碼操作現在刪除前導空格 ( pylance-release#3181 )
- Pylance 自動完成列表顯示空模組的名稱(pylance-release#3293,pylance-release#3289)
- 診斷不再顯示在 IPython 單元魔法中 ( pylance-release#3327 )
我們還要特別感謝本月的貢獻者:
amyreese 使用新發布的擴充套件模板建立了 ufmt 擴充套件。透過主要更改 Python 程式碼,該模板可用於為您喜歡的 linter 或格式化程式建立 VS Code 擴充套件。有關模板的更多資訊,請參考我們的 2022 年 8 月版本並嘗試使用 ufmt 擴充套件!
透過從 Marketplace 更新或下載 Python 擴充套件和 Jupyter 擴充套件來嘗試這些新改進 ,或者直接從 Visual Studio Code 中的擴充套件檢視安裝它們(Ctrl + Shift + X 或 ⌘ + ⇧ + X)。您可以在文件中瞭解有關 Visual Studio Code Python 的更多資訊。如果您遇到任何問題或有建議,請在Python VS Code GitHub頁面上提出問題。