日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

python中創建一個包并引用使用的操作方法_python

作者:張小丹 ? 更新時間: 2022-09-26 編程語言

一、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.py

from 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=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.cnblogs.com/learning9/p/16537402.html

欄目分類
最近更新