如何從 requirements.txt 載入套件並用於 setup.py 在 Python 開發中,套件管理是專案維護的重要一環。當我們使用 setuptools 來建立 Python 套件時,通常會在 setup.py 中指定 install_requires 來管理專案的套件。 然而,當專案的套件數量較多時,直接在 setup.py 內手動列出所有套件可能不太方便。因此,我們可以將套件整理到 requirements.txt ,然後在 setup.py 內動態讀取,確保專案的套件統一且易於維護。 setup.py 是什麼? setup.py 是 Python 套件的安裝與發佈腳本,負責定義套件名稱、版本、依賴關係,並支援打包與發佈。開發者可以透過 pip install . 安裝專案,或使用 python setup.py sdist bdist_wheel 來打包套件,甚至上傳至 PyPI 讓其他人使用。 讀取 requirements.txt 並加到 setup.py 我們可以使用以下方式,在 setup.py 內讀取 requirements.txt 內容,並將其設為 install_requires : from setuptools import setup # 讀取 requirements.txt with open('requirements.txt') as fid: requires = [line.strip() for line in fid] setup( name="my_package", version="0.1", install_requires=requires, packages=["my_package"] ) requirements.txt 內容範例 我們的 requirements.txt 可能會長這樣: numpy>=1.21.0 pandas==1.3.5 requests numpy>=1.21.0 表示至少需要 1.21.0 版本的 NumPy。 pandas==1.3.5 限...