如何導(dǎo)出python安裝的所有模塊名稱和版本號到文件中
Python 模塊
概念
python中的模塊是什么?簡而言之,在python中,一個文件(以“.py”為后綴名的文件)就叫做一個模塊,每一個模塊在python里都被看做是一個獨立的文件。模塊可以被項目中的其他模塊、一些腳本甚至是交互式的解析器所使用,它可以被其他程序引用,從而使用該模塊里的函數(shù)等功能,使用Python中的標準庫也是采用這種方法。
分類
在Python中模塊分為以下幾種:
- 系統(tǒng)內(nèi)置模塊,例如:sys、time、json模塊等等;
- 自定義模塊,自定義模塊是自己寫的模塊,對某段邏輯或某些函數(shù)進行封裝后供其他函數(shù)調(diào)用。注意:自定義模塊的命名一定不能和系統(tǒng)內(nèi)置的模塊重名了,否則將不能再導(dǎo)入系統(tǒng)的內(nèi)置模塊了。例如:自定義了一個sys.py模塊后,再想使用系統(tǒng)的sys模塊是不能使用的;
- 第三方的開源模塊:這部分模塊可以通過pip install進行安裝,有開源的代碼;
一般查看python下安裝了什么包,我們可在命令行模式下輸入
$ pip list
輸出結(jié)果:
Package Version
---------------------------------- ---------
absl-py 0.9.0
alabaster 0.7.12
altgraph 0.16.1
anaconda-client 1.7.2
anaconda-navigator 1.9.7
anaconda-project 0.8.3
asn1crypto 1.0.1
…
2
也可以
$ pip freeze
輸出結(jié)果:
absl-py==0.9.0
alabaster==0.7.12
altgraph==0.16.1
anaconda-client==1.7.2
anaconda-navigator==1.9.7
anaconda-project==0.8.3
asn1crypto==1.0.1
…
在python代碼中,可以用os.popen方法調(diào)用命令行代碼,返回輸出的對象,然后再將此寫入文件中:
import os installed_module_list = os.popen("pip freeze") # print(installed_module_list) with open("requirements.txt",'w') as f: for m in installed_module_list.read(): f.write(m)
不過這樣顯然麻煩了,還有更簡單的方法:
$ pip freeze >requirements.txt
這樣就直接將信息導(dǎo)出到文件中了
requirements.txt文件內(nèi)容如下:
在另一臺服務(wù)器上想部署相同的包,只需運行:
$ pip install -r requirements.txt
總結(jié)
到此這篇關(guān)于導(dǎo)出python安裝的所有模塊名稱和版本號到文件中的文章就介紹到這了,更多相關(guān)python 模塊名稱版本號導(dǎo)出內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python內(nèi)建類型str源碼學(xué)習(xí)
這篇文章主要為大家介紹了Python內(nèi)建類型str的源碼學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-05-05Django自定義User模型、認證、權(quán)限控制的操作
這篇文章主要介紹了Django自定義User模型、認證、權(quán)限控制的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-04-04python?調(diào)制解調(diào)的實現(xiàn)
在Python中,可以使用SciPy和NumPy庫來處理信號,包括進行FM信號的解調(diào),本文主要介紹了python?調(diào)制解調(diào)的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下2024-03-03pytorch之深度神經(jīng)網(wǎng)絡(luò)概念全面整理
這篇文章主要介紹了pytorch之深度神經(jīng)網(wǎng)絡(luò)概念,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-09-09詳解Python之數(shù)據(jù)序列化(json、pickle、shelve)
本篇文章主要介紹了Python之數(shù)據(jù)序列化,本節(jié)要介紹的就是Python內(nèi)置的幾個用于進行數(shù)據(jù)序列化的模塊,有興趣的可以了解一下。2017-03-03Python摳圖教程之使用OpenCV實現(xiàn)背景去除
這篇文章主要給大家介紹了關(guān)于Python摳圖教程之使用OpenCV實現(xiàn)背景去除的相關(guān)資料,背景去除是在很多視覺應(yīng)用里的主要預(yù)處理步驟,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2023-10-10Django基礎(chǔ)知識與基本應(yīng)用入門教程
這篇文章主要介紹了Django基礎(chǔ)知識與基本應(yīng)用,結(jié)合實例形式分析了Django框架基本的項目創(chuàng)建、啟動、查看版本等操作,并結(jié)合一個簡單的blog應(yīng)用示例分析了Django的基本使用方法,需要的朋友可以參考下2018-07-07Python3.10?Generator生成器Coroutine原生協(xié)程詳解
這篇文章主要為大家介紹了Python3.10?Generator生成器Coroutine原生協(xié)程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-12-12