# Python Jupyter 在 Windows 與 VSCode 上安裝 有些人使用網頁版本的 Jupyter 執行或是 Google Colab,但是沒有語法提示,但是 VScode 本身有語法提示。 1. 安裝環境 2. 設定 VSCode 3. 設定語法提示 4. 其它(語法小技巧、numpy 練習) ### 先安裝想要的 Python 版本 - [Python org](https://www.python.org/downloads/windows/) - [Windows Store](https://www.microsoft.com/store/productId/9PJPW5LDXLZ5) ### 使用虛擬環境 使用其中一個即可 - [安裝並使用 Conda 建立虛擬環境](https://medium.com/python4u/%E7%94%A8conda%E5%BB%BA%E7%AB%8B%E5%8F%8A%E7%AE%A1%E7%90%86python%E8%99%9B%E6%93%AC%E7%92%B0%E5%A2%83-b61fd2a76566) - [使用 virtualenv 建立虛擬環境](https://ithelp.ithome.com.tw/articles/10199980) ### 安裝 Jupyter 參考 [Installing the IPython kernel: Kernels for different environments](https://ipython.readthedocs.io/en/stable/install/kernel_install.html#kernels-for-different-environments) 1. 進入虛擬環境 ``` source activate $NAME$ ``` 2. 使用指令安裝 ```ipykernel``` ``` conda install pip conda install ipykernel # or pip install ipykernel ``` 3. 將該 ```ipykernel``` 加入列表中 ``` source activate $NAME$ python -m ipykernel install --user --name $NAME$ --display-name "Python ($NAME$)" ``` ### 安裝 VSCode - [VSCode 官方網站](https://code.visualstudio.com/) - [Jupyter Notebooks in VS Code](https://code.visualstudio.com/docs/datascience/jupyter-notebooks) 1. 開始之前,先將 Python Jupyter 套件安裝至虛擬環境中,使用 ```conda install jupyter``` 或是 ```pip install jupyter```。 若忘記此步驟,VSCode 在開啟 ```.ipynb``` 檔案並選好 kernel 後會詢問你是否要安裝。 2. 開啟任意的 ```.ipynb``` 檔案,如果是第一次跑,可以依照提示安裝 VSCode 額外套件 Jupyter Extension Pack,或是自行在 Extension Marketplace (通常是左邊 Menu 選項第五個或 ctrl + shift + X) 搜尋並安裝 3. 可選右上角 **Select Kernel** 選擇其它 Kernel,這裡因為有把指定的虛擬環境加入至列表中,就會顯示對應的 kernel name. ![](https://code.visualstudio.com/assets/docs/datascience/jupyter/native-kernel-picker.png) ### 設定語法提示 事實上語法提示不是 Juptyer 跟 VSCode 提供的功能,是由 VSCode 的 Python Extension 提供 1. 在 Extensions(ctrl + shift + X) 中找到 Python Extension 套件,點選齒輪,選擇 Extesnion Settings 開始設定。 2. 設定 ```Python: Default Interpreter Path``` 選項,例如修改成 ```C:\Users\$USERNAME$\$NAME$\Scripts\python``` 3. 重新開啟 VSCode,測試是否有正確語法提示。使用 numpy 部分函式會出現提示。 4. **(非強制)** 設定 Pylance Extension,一樣點選該 Extension Setting 勾選兩個選項,就會在自動在每個變數跟函示前面提示型態。 - ```Python › Analysis › Inlay Hints: Function Return Types``` - ```Python › Analysis › Inlay Hints: Variable Types``` ### 其它 #### 語法小技巧 在撰寫 Python 程式碼中,很多時候會遇到 ```Any``` 型態,會使得以上語法提示功能失效。 幾個小技巧,在 function 定義中建議參數與回傳值的型態,例如 ```python import numpy as np def foo(sim: np.ndarray): return np.ndarray(sim.shape) () def foo2() -> np.ndarray: return np.zeros(5) ``` #### numpy 練習 numpy 教學可參考 [CS231n Module 0](https://cs231n.github.io/)