python【模块的导入、打包、压缩、安装】

我们今天来说说模块的导入、创建以及打包
1.导入模块(以py为文件格式的文件都可以叫做模块)

import 模块名1
import 模块名2

2.用import 模块名 as 模块别名 ,来在文件中模块别名(第一个首字母大写)

Import  模块名  as  模块别名

3.从模块中导入某一个工具

from 模块名1  import  工具名

4.当从2个不同的模块导入相同的工具名或者函数名时,后导入的会把先导入的给覆盖掉。如果真的要导入相同的函数时,可以给其中一个取个别名

5.导入模块中所有工具

from  模块名  import*

不推荐使用,因为如果遇到有两个重名的工具或者函数,问题会很难排查!

6.在开发时,给文件起名,不要和系统的模块名重名
可以使用模块的内置属性__file__来看看模块的路径,来看看你使用的模块到底是自己的还是系统的

print(模块名.__file__)

7.模块可以向外界提供全局变量、函数、类,模块被导入时,文件中所有没有任何缩进的代码都会被执行一遍。使用__name__可以兼顾测试和导入两种模式,它可以做到,测试模块只在测试情况下运行,而被导入时不会被执行。
1>__name__是python的一个内置属性,记录着一个字符串
2>如果是被其他文件导入的,__name__就是模块名
3>如果是执行当前的程序,__name_____main___

看个例子:
这是我们需要导入的一个模块,模块内有一个方法Dog()

def Dog() :
    print('我是哮天犬!汪汪汪!')

if __name__ == '__main__' :    #把__name__放在需要被导入的模块中,用于在这个文件中检测Dog()方法是否有效
    print(__name__)
    Dog()

Dog()  

结果为:

__main__
我是哮天犬!汪汪汪!
我是哮天犬!汪汪汪!

可以看到在当前模块中print(__name__) 输出的是 __main__输出后再执行Dog(),根据代码跳出去再执行一遍

扫描二维码关注公众号,回复: 8881770 查看本文章

再来看看,当这个模块被导入时(上面的模块名叫test_需要导入的模块):

import test_需要导入的模块
print('这句话用于检验__name__的功能!')

结果为:

我是哮天犬!汪汪汪!
这句话用于检验__name__的功能!

哎,可以看到test_需要导入的模块这个模块中的

if __name__ == '__main__' :    #把__name__放在需要被导入的模块中,用于在这个文件中检测Dog()方法是否有效
    print(__name__)
    Dog()

并没有被执行,而是执行了这个判断语句之外的Dog()函数

8.包(package)是一个包含多个模块的特殊目录,并且目录下有个特殊的文件__init__
1>使用import 包名可以一次性导入包中所有模块
2>如果要在外界使用包中的模块,需要在__init__.py中指定对外界提供的模块列表

从 当前目录 导入 模块列表
from . import 模块名1
from . import 模块名2

比如我创建了一个包animal_package然后包里有DogCat两个模块
在这里插入图片描述要使外界可以导入并使用包中的模块,我们需要在包中同时建立一个__init__.py文件,文件里的代码为

from . import Dog
from . import Cat

这样一个包就完成了!

最后就是将我们的模块包做成压缩包并且下载使用
步骤:
1>创建setup.py(把setup.py文件和你的包放在同一文件内)

from distutils.core import setup

setup(name='animal_package',    #包名
      version='1.0',   #版本
      description="Blue's 猫狗互动模块",    #描述包的信息
      long_description='简单的猫狗互动模块',   #详细地描述包的信息
      author='Blue',    #作者
      author_email='[email protected]',   #作者邮箱
      url='https://blog.csdn.net/qq_43403025',   #作者个人网页
      py_modules=['animal_package.Cat',
                  'animal_package.Dog'])

这是一个固定的格式,里面的一些信息可以更改!

2>构建模块

Python setup.py build

window+R打开命令行,然后cd 到你模块所在的文件夹,然后执行这个命令
在这里插入图片描述执行后,文件夹会出现一个build文件
在这里插入图片描述3>生成发布压缩包

Python setup.py sdist

在这里插入图片描述成功后,文件夹内
在这里插入图片描述这样之后用pip install 包名 来安装你的包!
安装完成后可以在lib>site-packages里看到你自己的包

在这里插入图片描述然后打开你的python解释器,导入这个包并执行一下试试!
先用import 包名 导入你的包,导入后执行方法
在这里插入图片描述执行成功!

发布了29 篇原创文章 · 获赞 4 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_43403025/article/details/100561392
今日推荐