2024-07-18|閱讀時間 ‧ 約 25 分鐘

[Python]一次安裝wheel 套件包

在離線環境需要安裝Python套件時就相當的麻煩,需要先下載好套件包,在打指令安裝,若套件數量一多時就會相當麻煩。

本文將介紹如何利用兩行指令快速的安裝整個資料夾的套件。



安裝步驟

1.開啟PowerShell視窗

在放置wheel 套件包的資料夾下shift + 右鍵,就會看到開啟的方法

2. 在PowerShell視窗輸入指令

輸入這兩行指令,就會開始安裝套件了,是不是很方便。

由於我資料夾只有兩個套件,opencv與numpy的,故就會只安裝這兩個。

$package_list = Get-ChildItem -Filter *.whl
python -m pip install --no-deps $package_list


以下是這段指令的詳細說明:

1. $package_list = Get-ChildItem -Filter *.whl

這行指令使用 PowerShell 的 Get-ChildItem 命令來獲取當前目錄下的所有 .whl 文件:

  • Get-ChildItem: 這個 cmdlet 用來列出指定位置的文件和文件夾。在這裡,沒有指定具體位置,因此默認是當前目錄。
  • -Filter *.whl: 這個參數指定了過濾條件,表示只列出擴展名為 .whl 的文件,這些文件是 Python 的 wheel 包。
  • $package_list: 這是 PowerShell 的變量,用來存儲 Get-ChildItem 命令的輸出,即當前目錄下所有 .whl 文件的列表。


2. 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 包。



綜合解釋

這段指令的完整流程如下:

  1. 查找所有 .whl 文件: 使用 Get-ChildItem -Filter *.whl 找到當前目錄中的所有 Python wheel 包文件,並將這些文件存儲在 $package_list 變量中。
  2. 安裝這些 .whl 文件: 使用 pip install --no-deps 命令安裝 $package_list 中的所有 .whl 包文件,不包括它們的依賴項。

這段指令適用於當你有多個 .whl 文件需要安裝並且不想安裝它們的依賴套件時。這在某些特定情況下(如離線安裝或測試環境中)可能會非常有用。



查看安裝的套件

輸入指令 pip list,確認剛剛安裝的套件是否有安裝完成。







分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.