一、Python包
python包在開發中十分常見,一般通過匯入包含特定功能的python模塊包進行使用,當然,也可以自己創建打包模塊,然后發布,安裝使用, 1、安裝包- 在線安裝包:pip install 包名;
- 安裝第三方包:python setup.py install (幾乎每個python第三方包中都有這個setup.py檔案,這個檔案是作者打包時設定的檔案,而安裝第三方包時,也是要先進入到setup.py檔案所在目錄,然后執行python setup.py install)
2、distutils 和 setuptools 兩種打包的工具
distutils
distutils 是 python 標準庫的一部分,這個庫的目的是為開發者提供一種方便的打包方式, 同時為使用者提供方便的安裝方式,當我們開發了自己的模塊之后,使用distutils的setup.py打包, 使用詳情如下: (1)在自己專案的根目錄下新建一個setup.py的腳本,然后在腳本中輸入下面的代碼,假設你要打包的module名稱為str.pyfrom distutils.core import setup
setup (
name = 'str',
version = '1.0',
py_modules = ['str'],
)
(3)根目錄下執行打包命令:python setup.py sdist ,將自己的python檔案打包,此時會發現多了一個檔案夾dist,此檔案夾下面多了一個str-0.1.tar.gz的壓縮包,這個壓縮包里面就是untitled目錄下的專案代碼
(4)安裝包:進入cmd,然后輸入dos命令進入setup.py檔案所在目錄,然后輸入python setup.py install,
setuptools
setuptools是distutils的增強版,它可以幫助我們更簡單的創建和分發Python包,尤其是擁有依賴關系的,用戶在使用setuptools創建的包時,并不需要已安裝setuptools,只要一個啟動模塊setup.py即可, 使用詳情如下: (1)安裝pip install python-setuptools后,在自己專案的根目錄下新建一個setup.py的腳本(注意:每個目錄中都需要創建一個init.py的檔案,表示這個目錄是一個包)from setuptools import setup, find_packages
setup(
name = "demo",
version = "0.1",
packages = find_packages(), # 代表在當前目錄,以及當前目錄下,所有的python包(帶__init__.py的目錄)都搜索,并一起打成egg檔案包,find_packages(xyz),就是搜索名稱為xyz的包,以及xyz的下層目錄的包搜索出來,并一起打成egg檔案包
include_package_data=https://www.cnblogs.com/learning9/p/True, #包含資料檔案
install_requires=reqs, #指明依賴,該引數包含說明依賴的字串或串列
)
(2)根目錄下執行打包命令:python setup.py sdist_egg即可打包一個egg格式的包,可以看到,里面是一系列自動生成的檔案,如圖:
(3)而dist中的壓縮包就是安裝包,此時默認的egg包,egg包就是zip包,如果需要使用egg包,簡單方法是name將egg后綴改成zip解壓即可(或者進入cmd,然后輸入dos命令進入setup.py檔案所在目錄,然后輸入python setup.py install)
(4)測驗匯入包:
實際專案中,安裝非官方的第三方包時,可以下載到本地后,在setup.py檔案夾下執行 python setup.py install,或者在包根目錄通過pip install -e . 安裝
pip會自動將包復制到site-packages,他的作用是:
- 安裝site-packages/PackageName.egg-link檔案
- 添加路徑 site-packages/easy-install.pth
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/500686.html
標籤:Python
上一篇:WingPro 8 for Mac(專業Python IDE開發工具)
下一篇:Python基礎-23列舉
