企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
## Python中的包 包是一个分层次的文件目录结构,它定义了一个由模块及子包,和子包下的子包等组成的 Python 的应用环境。 简单来说,包就是文件夹,但该文件夹下必须存在 \_\_init\_\_.py 文件, 该文件的内容可以为空。**\_\_init\_\_.py**用于标识当前文件夹是一个包。 考虑一个在**package\_yingtai**目录下的**yingtai1.py、yingtai2.py、\_\_init\_\_.py**文件,test.py 为测试调用包的代码,目录结构如下: ~~~ test.py package_yingtai |-- __init__.py |-- yingtai1.py |-- yingtai2.py ~~~ 源代码如下: ``` #!/usr/bin/python # -*- coding: UTF-8 -*- def yingtai1(): print "I'm in yingtai1" ``` ``` #!/usr/bin/python # -*- coding: UTF-8 -*- def yingtai2(): print "I'm in yingtai2" ``` 现在,在**package\_yingtai**目录下创建**\_\_init\_\_.py**: ``` #!/usr/bin/python # -*- coding: UTF-8 -*- if __name__ == '__main__': print '作为主程序运行' else: print 'package_yingtai 初始化' ``` 然后我们在**package\_yingtai**同级目录下创建 test.py 来调用**package\_yingtai**包 ## test.py ``` #!/usr/bin/python # -*- coding: UTF-8 -*- # 导入 Phone 包 from package_yingtai.yingtai1 import yingtai1 from package_yingtai.yingtai2 import yingtai2 yingtai1() yingtai2() ``` 以上实例输出结果: ~~~ package_yingtai 初始化 I'm in yingtai1 I'm in yingtai2 ~~~ 如上,为了举例,我们只在每个文件里放置了一个函数,但其实你可以放置许多函数。你也可以在这些文件里定义Python的类,然后为这些类建一个包。