如何創建requirements.txt

作者:

分類:

平常在GitHub中使用python的project中常會看到requirements.txt,這就是紀錄你這個project使用了那些package,這樣才能夠快速安裝會使用到的library以便使用和部署。

使用方法:
開啟CLI,並輸入pip freeze。

pip freeze > requirements.txt

它便會在當前資料夾創建一個requirements.txt,並將如下資訊儲存到requirements.txt中。下面就是我這台電腦安裝的所有package和版本。

C:\Users>pip freeze
async-generator==1.10
attrs==23.1.0
certifi==2023.5.7
cffi==1.15.1
charset-normalizer==3.1.0
colorama==0.4.6
exceptiongroup==1.1.1
h11==0.14.0
idna==3.4
outcome==1.2.0
packaging==23.1
pycparser==2.21
PySocks==1.7.1
python-dotenv==1.0.0
requests==2.30.0
selenium==4.9.1
sniffio==1.3.0
sortedcontainers==2.4.0
tqdm==4.65.0
trio==0.22.0
trio-websocket==0.10.2
urllib3==2.0.2
webdriver-manager==3.8.6
wsproto==1.2.0

當然我這台安裝的所有package並不代表我這一個project就會用到上述所有的package,但是我通常都不會去測試,畢竟一個package也沒多大,也才幾MB而已,多裝幾個也沒關係。
關於如何優化,我之後有空會再寫一篇。

現在project有requirements.txt了,那要如何使用呢?
只要從cmd,cd進入該資料夾並輸入

pip install -r requirements.txt

pip就會自動安裝上述的package了,至於版本號想要更改的話,只要更改==就可以了,請參考下表。

RequirementDescription
fooany version of foo
foo>=5any version of foo, above or equal to 5
foo>=5.6any version of foo, above or equal to 5.6
foo==5.6.1exact match
foo>5foo-5 or greater, including minor and patch
foo>5, <5.7foo-5 or greater, but less than foo-5.7
foo>0, <5.7any foo version less than foo-5.7
https://iscompatible.readthedocs.io/en/latest/

參考資料:
https://iscompatible.readthedocs.io/en/latest/
https://tech.gjlmotea.com/2020/04/pythonrequirementstxt.html


留言

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *