程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Python >> 學習使用python打包工具distutils

學習使用python打包工具distutils

編輯:Python

安裝和了解distutils

python中自帶了distutils,直接用

使用步驟

  • 寫一個安裝腳本(setup.py)
  • (可選)寫一個安裝配置文件
  • 創建一個源碼分布
  • (可選)創建一個或多個編譯過的二進制分布

一個簡單的例子

from distutils.core import setup
setup(name='test',
      version='1.0',
      py_modules=['test'],
      )

常見的python術語

  • module 組件 Python中可重用代碼的基本單位,這裡主要介紹純python組件、擴展組件和包
  • pure Python module 純Python組件 完全由python寫成的組件
  • extension module 擴展組件 由低級語言(C,C++)等寫成的組件
  • package 包 一個含有別的組件的組件。通常包含在文件系統的目錄下,並且顯示聲明在__init__.py文件中
  • root package 根包。 在根目錄sys.path下的包

distutils特有的包

  • module distribution 組件分布 一個可以安裝的一系列組件的合集
  • pure module distribution 純組件分布
  • non-pure module distribution 不純組件分布,含有擴展組件
  • distribution root 你的源碼最高級的目錄,即setup.py所在目錄

編寫安裝腳本

#!/usr/bin/env python

from distutils.core import setup

setup(name='test',
      version='1.0',
      description='test package',
      author='Su Yan',
      author_email='[email protected]',
      url='http://www.xxx.org',
      packages=['test'],
      scripts=['scripts/test.sh']
     )

這個例子包含了一些詳細的信息,在packages中可以利用os.listdir(os.path.join('mydir','subdir'))等函數添加目錄下全部目錄。

在packages中包含的目錄中,最好有__init__.py來聲明它是一個包,如果沒有,會有異常提醒

scripts這項指,如果你的包有執行文件,可以講其復制到/usr/local/bin

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved