在離線環境需要安裝Python套件時就相當的麻煩,需要先下載好套件包,在打指令安裝,若套件數量一多時就會相當麻煩。
輸入這兩行指令,就會開始安裝套件了,是不是很方便。
由於我資料夾只有兩個套件,opencv與numpy的,故就會只安裝這兩個。
$package_list = Get-ChildItem -Filter *.whl
python -m pip install --no-deps $package_list
以下是這段指令的詳細說明:
$package_list = Get-ChildItem -Filter *.whl
這行指令使用 PowerShell 的 Get-ChildItem
命令來獲取當前目錄下的所有 .whl
文件:
Get-ChildItem
: 這個 cmdlet 用來列出指定位置的文件和文件夾。在這裡,沒有指定具體位置,因此默認是當前目錄。-Filter *.whl
: 這個參數指定了過濾條件,表示只列出擴展名為 .whl
的文件,這些文件是 Python 的 wheel 包。$package_list
: 這是 PowerShell 的變量,用來存儲 Get-ChildItem
命令的輸出,即當前目錄下所有 .whl
文件的列表。python -m pip install --no-deps $package_list
這行指令使用 Python 的 pip
包管理工具來安裝剛才找到的 .whl
文件:
python -m pip
: 這個命令使用 Python 來調用 pip
包管理工具。-m
選項告訴 Python 運行指定模組作為腳本,這裡指定的是 pip
。install
: 這是 pip
的一個子命令,用來安裝包。--no-deps
: 這個選項告訴 pip
不要安裝任何依賴項。這意味著只會安裝指定的 .whl
包,不會檢查或安裝這些包所需的其他包。$package_list
: 這是前面步驟中獲取的 .whl
文件列表,它會被傳遞給 pip install
命令。這些文件應該是可安裝的 Python 包。這段指令的完整流程如下:
.whl
文件: 使用 Get-ChildItem -Filter *.whl
找到當前目錄中的所有 Python wheel 包文件,並將這些文件存儲在 $package_list
變量中。.whl
文件: 使用 pip install --no-deps
命令安裝 $package_list
中的所有 .whl
包文件,不包括它們的依賴項。這段指令適用於當你有多個 .whl
文件需要安裝並且不想安裝它們的依賴套件時。這在某些特定情況下(如離線安裝或測試環境中)可能會非常有用。
輸入指令 pip list
,確認剛剛安裝的套件是否有安裝完成。