採用 Python for everybody 作為參考書
機械設計工程系所開設的計算機程式課程, 在 2020 Fall 將利用 Python for everybody 作為學習 Python3 程式語言的參考書, 在此學習 Python3 的目標有二: - 讓使用者之後能夠結合 Flask 框架, 以網際模式執行工程設計與分析 - 讓使用者之後可以結合 Pytorch 與 Keras, 以機器學習執行機電整合設計
配合 Python for everybody 書中的作業, 可以參考 作業程式碼 進行學習.
由於 Python 屬於解譯程式語言, 編寫完成後, 可以直接利用 Python 解譯環境進行解譯執行, 使用上較編譯類的 C/C++ 程式方便, 但是 Python 程式的執行通常較 C/C++ 程式慢, 但是可以透過後續的 Cython 語法, 轉為 C/C++ 程式碼, 取得較快的執行速度.
建立 Python 執行環境
從 Python 官方網站 可以發現目前最新的版本為 3.8.5, 由於 3.8.X 版本都可以共享安裝模組的程式庫, 因此之前所建立的 3.8.3 可攜系統仍可持續使用. 但是在此我們將要安裝 3.8.5.
假如您一直使用個人所擁有的筆記型電腦, 可以直接將 Python 安裝在 Windows 10 64 位元操作系統, 假如使用 Ubuntu 20.04 虛擬或實體系統, 應該已經內建 Python 3.8.3 版, 使用者可以直接使用.
在此我們下載 3.8.5 版的 Windows x86-64 executable installer, 使用筆電者可以直接安裝在 Windows 10 64 位元操作系統, 為了方便引用, 建議安裝在 C:\Python38 目錄, 安裝時可以選擇安裝所有元件與資料, 其中包含 pip.
但是就機械設計工程師共用電腦過程中的需求, 以下將設法將 Python 解譯環境建立為可攜系統, 可以放入 USB 隨身碟, 在任一台 Windows 10 64 位元電腦上使用.
建立 Python 可攜系統
希望將 Python 解譯系統建立為可攜系統的重點有二: - 安裝在操作系統時, 選擇不要安裝 pip, 完成基本安裝後, 將 C:\Python38 目錄資料複製到隨身碟或 C:\tmp\fall2020\data\Python38, 完成複製後解除系統中的 Python 3.8.5 - 為了正確使用可攜 Python 3.8.5, 除了必須提供必要的可攜環境變數與 path 搜尋路徑設定外, 必須以命令列解譯執行 get-pip.py, 手動安裝 pip.
步驟一的 fall2020 目錄除了包含 data 子目錄外, 還需要兩個批次檔案, 分別為 start.bat 與 stop.bat, 而 data 目錄中則包含 Python38 與 home.
另外, 我們將採用 SciTE 用來編輯 Python 程式. 可以直接從 SciTE Download 頁面, 下載 Full 64-bit download, 解開壓縮後, 放入data 目錄中, 建立 wscite 目錄.
使用下列兩個批次檔案的可攜系統下載 fall2020_cp.7z.
其中的 wscite, 共有幾處修改: - wscite 目錄中的 SciTEGlobal.properties,
139 行將 # 去除, 成為 load.on.activate=1, 表示若檔案在 wscite 之外變更, 將會載入最新版本內容.
179-181 行將 # 去除, 成為:
tabsize=4
indent.size=4
use.tabs=0
表示使用者按下 tab, 將會以 4 個 space 取代.
300 行將 # 去除, 成為 code.page=65001, 表示編輯器採 UTF-8 編碼.
301 行加上 #, 成為 #code.page=0, 表示關閉原先的 system 編碼.
- wscite 目錄中的 python.properties 檔案修改:
以 154 行取代 153 行, 成為:
#python.command=pyw
python.command=y:\python38\pythonw.exe
表示要利用 y:\python38\pythonw.exe 解譯副檔案為 .py 的程式檔案, 使用者只要針對 .py 檔案, 按下 Tools -> Go, 就可以解譯 .py 程式
start.bat
@echo off set Disk=y subst %Disk%: "data" %Disk%: set HomePath=%Disk%:\home set HomeDrive=%Disk%:\home set Home=%Disk%:\home set USERPROFILE=%Disk%:\home REM 將系統 Python 程式的 io 設為 utf-8 set PYTHONIOENCODING="utf-8" set PYTHONPATH=%Disk%:\Python38\DLLs;%Disk%:\Python38\Lib;%Disk%:\Python38\Lib\site-packages; set PYTHONHOME=%Disk%:\Python38 REM 設定跟 Python 有關的命令搜尋路徑 set path_python=%Disk%:\Python38;%Disk%:\Python38\Scripts; path=%Disk%:;%path_python%; start /MIN cmd.exe start /MIN cmd.exe start /MIN cmd.exe start /MIN cmd.exe start /MIN %Disk%:\wScite\SciTE.exe start /MIN %Disk%:\wScite\SciTE.exe Exit
與
stop.bat
@echo off set Disk=y path=%PATH%; taskkill /IM python.exe /F taskkill /IM pythonw.exe /F taskkill /IM scite.exe /F REM 終止虛擬硬碟與目錄的對應 subst %Disk%: /D REM 關閉 cmd 指令視窗 taskkill /IM cmd.exe /F EXIT
No comments:
Post a Comment