新一代Python包管理工具
1 簡介
說起Python的包管理工具,大傢第一時間想到的肯定是pip、conda等經典工具。但最近我發現瞭一款新穎的Python包管理工具——pdm,它受到PEP582
以及node管理庫文件方式的啟發,幫助我們以「本地項目庫」的形式創建及管理不同的Python環境。
2 使用pdm管理項目庫環境
2.1 pdm的安裝
pdm的安裝方式多種多樣,這裡我們使用官方推薦的方式進行安裝:
python -m pip install --user pipx python -m pipx ensurepath
接著關閉你的終端重開一個新的,繼續輸入:
pipx install pdm
當出現以下內容時,則代表我們的pdm已經安裝完成瞭~
2.2 pdm的基礎使用
使用pdm以當前目錄作為項目倉庫創建項目時,我們需要根據項目實際需要,先切換到對應Python版本的環境之下,再執行pdm init來初始化項目,以3.7為例:
初始化項目時,根據自己的實際情況填寫每個問題即可:
cd C:\Users\pengz\Desktop\當期博客工作臺\pdm-demo conda activate dash-apps pdm init
上述過程之後,你會在當前目錄下發現創建好的pyproject.toml
文件,它記錄瞭當前pdm項目的各項基本參數:
接下來我們可以根據自己項目的實際需要使用pdm add命令來安裝指定的單個或多個第三方Python庫,以flask為例(其中第一行命令用於設置國內pypi鏡像源):
pdm config pypi.url https://pypi.douban.com/simple/ pdm add -v flask flask-login
完成安裝後,我們可以在當前目錄下看到__pypackages_
目錄,我們前面所安裝的庫就隔離安裝在其下面,類似node的node_modules
目錄:
也與PEP582所倡導的項目結構相符合:
foo __pypackages__ 3.7 lib bottle myscript.py
這樣就實現瞭項目級別的環境隔離效果,且無需創建額外的虛擬環境,要在IDE中使用pdm項目下的本地隔離庫執行程序很簡單,以pycharm為例,將pdm項目打開為pycharm工程之後,找到如圖所示位置的lib文件夾,將其標記為Sources Root即可,同時記得將解釋器選為pdm init初始化時所在環境相對應的:
與終端中原始環境的執行結果對比,可以發現成功實現瞭環境隔離,這是因為pdm項目的__pypackages__中的包會在環境本身的site-packages之前被載入,從而更好地隔離包的環境:
如果你想要在其他路徑或其他機器上還原某個pdm項目,則僅需要將pyproject.toml
與pdm.lock文件拷貝過去,再在對應目錄下執行pdm sync -v命令即可,非常的方便,類似npm install
配合package.json
的功能:
到此這篇關於新一代Python包管理工具的文章就介紹到這瞭,更多相關新一代Python包管理工具內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- 解決pip install 卡住不動的問題
- Python包管理工具pip用法詳解
- Python開發裝包八種方法詳解
- MAC+PyCharm+Flask+Vue.js搭建系統
- macOS M1(AppleSilicon) 安裝TensorFlow環境