解決方案
Python 中的
os.path.abspath(<relative path>)函式將相對路徑解釋為相對於當前工作目錄 (CWD - Current Working Directory) 的位置。
從 Windows 命令提示字元呼叫 Python 腳本時,CWD 通常與 Python 腳本檔案的位置相同。因此相對於 CWD 定義產生的檔案路徑會等同相對於 Python 腳本檔案路徑。
當使用 LabVIEW 呼叫 Python 腳本時,CWD 預設是 LabVIEW 首次啟動的位置。也就是如果您從Windwos的
開始 打開 LabVIEW,CWD 將是
C:\Windows\System32 ,如觀察到的那樣。
有兩種方式可以解決這個問題:
- 編輯 Python 腳本以在定義相對路徑時引用腳本檔案位置而不是 CWD。
- 從 LabVIEW 以程式化方式更改 CWD。
有一個範例 VI 可從 LabVIEW 取得或設置 CWD 的子 VI。因此如果在呼叫 Python 腳本之前設置 CWD,則可以決定相對路徑應該相對於哪個目錄。