结果如下图:
如果不进行安装,则不需要新建setup.txt。
Python中_init_.py是package的标志。init.py 文件的一个主要作用是将文件夹变为一个Python模块,Python 中的每个模块的包中,都有__init__.py 文件。在python中导入一个包时,实际上是导入了它的__init__.py文件,这样我们可以在__init__.py文件中批量导入我们所需要的模块,而不再需要一个一个的导入。
例如:
# package
# __init__.py
import re
import urllib
import sys
import os
# a.py
import package
print(package.re, package.urllib, package.sys, package.os)
def max(a,b):
if a >= b:
return a
else:
return b
def min(a,b):
if a <= b:
return a
else:
return b
__all__=["getMax","getMin"]
可以根据自己编写的文件名,添加在[" "]中。这样在导入模块后,就可以直接使用getMaxh和getMin这两个文件了。如果要包含其他模块,可以使用from … import …导入。
from distutils.core import setup
setup(
name="my_minmax",
version="1.0",
description="edited by myself",
author="lius",
py_modules=["my_packages.getMax","my_packages.getMin"]
)
并保存为py文件。
其中name就是最终生成的模块的名字,即包名。version就是该包的版本了,py_modules就是该文件包下包含的py文件。
此时得到的结果是:
1)进入cmd命令行,cd到文件夹My_pakgs的目录下:
并输入:
python setup.py build
得到结果如下:
这时在My_pkgs文件夹下出现了build文件夹,具体内容大家可以查看。
再在命令行中继续输入:
python setup.py sdist
结果如下:
有一些需要作者信息等的警告,不用管他。
这时再看看文件夹:
其中可以安装和发布的压缩文件在dist文件夹中:
该文件可以给大家共享了。
打开cmd命令行,使用:
激活需要安装到的python环境,
pip install C:***\My_pkgs\dist\my_minmax-1.0.tar.gz
显示:
至此安装成功,可以想其他包一样对该包进行调用了。
打开第三方包,可以发现:
一个是安装包my_minmax文件信息,一个就是模块所在的文件my_packages
调用模块:
如果卸载该包,卸载的是my_mimmax,而不是my_packages。因为在之前setup.py中写的name=my_minmax,即该包的名字叫做my_minmax