Python打包工具setuptools的使用
將我們寫的Python程序發(fā)布成包后,可以使其能夠安裝使用。
在項目上測試的時候,某些情況下,可以將Python打包,然后上傳到測試服務器,安裝測試。
setuptools是常用的打包工具。
一個簡單的setup.py文件如下:
from setuptools import setup, find_packages setup(name = "my_demo",version = "0.1",packages = find_packages() )其中,name是包的名字,version是版本。
給packages指定find_packages(),意為包括在本目錄下的所有Python包。
什么是Python包呢?在Python 3.2及更早版本中,只有包含__init__.py文件才能識別為Python包。
那要是不想包含某些包呢?給find_packages指定exclude參數(shù)即可。
那如果我們想將數(shù)據(jù)文件也添加進來呢?有以下方法(以下:package_data:數(shù)據(jù)文件,即一些txt或者dat文件 ):
方法一:
在使用版本控制的情況下(先包含全部數(shù)據(jù)文件,再指定去除):
packages = find_packages('src'), # 包含所有src目錄下的packagepackage_dir = {'':'src'}, include_package_data = True, # 包含所有版本控制的內(nèi)容# 排除所有 README.txtexclude_package_data = { '': ['README.txt'] }方法二(直接指定包含哪些數(shù)據(jù)文件):
packages = find_packages('src'), # 包含所有src中的包package_dir = {'':'src'}, # 告訴distutils包都在src下 package_data = {# 如果包中含有.txt文件,則包含它'': ['*.txt'],# 包含demo包data文件夾中的 *.dat文件'demo': ['data/*.dat'] }其他的一些常用參數(shù):
zip_safe,指定boolean選項,控制項目能否直接通過壓縮文件安全安裝。
install_requires:安裝依賴
entry_points: 創(chuàng)建控制臺腳本 詳情
等等
可以使用命令:
python setup.py bdist_egg
來創(chuàng)建egg文件,egg文件可以跨平臺,便于使用pip安裝。
也可以使用命令:
python setup.py sdist
來創(chuàng)建源發(fā)布版本,此后可通過pip install來安裝生成的tar.gz包
其他一些setup.py文件的參數(shù)選項:
?python setup.py build???? #編譯
?python setup.py install????#安裝
?python setup.py sdist????? #制作分發(fā)包
?python setup.py bdist_wininst??? #制作windows下的分發(fā)包
?python setup.py bdist_rpm
?
參考:
https://setuptools.readthedocs.io/en/latest/setuptools.html
?
轉(zhuǎn)載于:https://www.cnblogs.com/geeklove01/p/8280939.html
總結(jié)
以上是生活随笔為你收集整理的Python打包工具setuptools的使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iOS企业版使用第三方实现自动更新版本
- 下一篇: ECharts 之 环形图