python生成requirements.txt的兩種方法
python項目如何在另一個環(huán)境上重新構(gòu)建項目所需要的運行環(huán)境依賴包?
使用的時候邊記載是個很麻煩的事情,總會出現(xiàn)遺漏的包的問題,這個時候手動安裝也很麻煩,不能確定代碼報錯的需要安裝的包是什么版本。這些問題,requirements.txt都可以解決!
生成requirements.txt,有兩種方式:
第一種 適用于 單虛擬環(huán)境的情況: :
pip freeze > requirements.txt
為什么只適用于單虛擬環(huán)境?因為這種方式,會將環(huán)境中的依賴包全都加入,如果使用的全局環(huán)境,則下載的所有包都會在里面,不管是不時當(dāng)前項目依賴的,如下圖
當(dāng)然這種情況并不是我們想要的,當(dāng)我們使用的是全局環(huán)境時,可以使用第二種方法。
第二種 (推薦) 使用 pipreqs
,github地址為: https://github.com/bndr/pipreqs
# 安裝 pip install pipreqs # 在當(dāng)前目錄生成 pipreqs . --encoding=utf8 --force
注意 --encoding=utf8
為使用utf8編碼,不然可能會報UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 406: illegal multibyte sequence 的錯誤。
--force
強制執(zhí)行,當(dāng) 生成目錄下的requirements.txt存在時覆蓋。
當(dāng)當(dāng)當(dāng),可以看見我依賴的只有這些啦
使用requirements.txt安裝依賴的方式:
pip install -r requirements.txt
總結(jié)
以上所述是小編給大家介紹的python生成requirements.txt的兩種方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
相關(guān)文章
使用tensorflow實現(xiàn)VGG網(wǎng)絡(luò),訓(xùn)練mnist數(shù)據(jù)集方式
這篇文章主要介紹了使用tensorflow實現(xiàn)VGG網(wǎng)絡(luò),訓(xùn)練mnist數(shù)據(jù)集方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05Python+tkinter使用40行代碼實現(xiàn)計算器功能
這篇文章主要為大家詳細(xì)介紹了Python+tkinter使用40行代碼實現(xiàn)計算器功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-01-01NoSql數(shù)據(jù)庫介紹及使用Python連接MongoDB
MongoDB是一個非常流行的NoSQL數(shù)據(jù)庫,常用于大規(guī)模數(shù)據(jù)存儲應(yīng)用,下面這篇文章主要給大家介紹了關(guān)于NoSql數(shù)據(jù)庫及使用Python連接MongoDB的相關(guān)資料,需要的朋友可以參考下2023-06-06Python的Flask框架中使用Flask-SQLAlchemy管理數(shù)據(jù)庫的教程
在Python中我們可以使用SQLAlchemy框架進(jìn)行數(shù)據(jù)庫操作,那么對應(yīng)的在Flask框架中我們可以使用SQLAlchemy,下面我們就來看一下Python的Flask框架中使用Flask-SQLAlchemy管理數(shù)據(jù)庫的教程2016-06-06基于Python3.6+splinter實現(xiàn)自動搶火車票
這篇文章主要為大家詳細(xì)介紹了基于Python3.6+splinter實現(xiàn)自動搶火車票,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-09-09python三種數(shù)據(jù)結(jié)構(gòu)及13種創(chuàng)建方法總結(jié)
拿Python來說,數(shù)據(jù)結(jié)構(gòu)的概念也是超級重要,不同的數(shù)據(jù)結(jié)構(gòu),有著不同的函數(shù),供我們調(diào)用,接下來,我們分別來介紹字符串、列表、字典的創(chuàng)建方法2021-09-09python操作csv格式文件之csv.DictReader()方法
這篇文章主要介紹了python操作csv格式文件之csv.DictReader()方法,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,感興趣的小伙伴可以參考一下2022-06-06Pytorch中torch.nn.**和torch.nn.functional.**的區(qū)別
本文主要介紹了Pytorch中torch.nn.**和torch.nn.functional的區(qū)別,torch.nn.**是一個繼承的類,需要構(gòu)造對象后再調(diào)用,而torch.nn.functional是純數(shù)學(xué)函數(shù),可以直接使用,下面就來詳細(xì)的介紹一下2024-11-11