程序员大数据 爬虫Python AI Sql

05-Python-包&模块-包和模块补充

2018-12-05  本文已影响7人  撩课学院

学习地址:

撩课-Python大数据+人工智能1
撩课-Python大数据+人工智能2
撩课-Python大数据+人工智能3
撩课-Python大数据+人工智能4
撩课-Python大数据+人工智能5
撩课-Python大数据+人工智能6
撩课-Python-GUI编程-PyQt5

1.包和模块补充

区分模块的测试与发布状态

        场景简述
            有可能我们在开发模块的过程当中,需要写一些测试代码,来测试我们所写的函数是否正确;暂且把这一段代码称为“测试代码”
            等我们测试通过之后,正常会发布到Pypi供他人下载使用
            而别人使用的场景一般为“当做模块导入使用”,比如“import xxx”
            我们知道,一旦import 某个模块之后,会执行里面所有的顶级代码;也就意味着会连同“测试代码”一起执行
            而这种结果,就违背了用户本意
                只是想导入你的模块,在自己代码需要的地方调用相关API
                但是在导入之后,却额外的执行了根本不应该执行的“测试代码”
        解决方案
            方式1:模块发布者,在发布前,应该删除所有测试代码
                下次更新迭代,还要再次把“测试代码”整回来
                来回删除比较麻烦
            方式2:借助__name__来区分py文件被执行的模式
                直接执行;此值为
                    __main__
                被当做模块来执行;此值为
                    模块名称
                代码实例
                    if __name__ == '__main__':
                        测试代码
                    注意: 当以脚本的方式执行这个文件时, 此处代码会被执行

2.当以导入的方式执行时, 此处不会被执行

    使用PyCharm安装包和模块
        实践
上一篇 下一篇

猜你喜欢

热点阅读