包的使用(python3入门)
1 什么是包
包的本质就是一个包含有__init__.py文件的文件夹
包是模块的一种形式
所以包用来被当作模块导入使用
导入包其实就是在导入包下的__init__.py
2 为何要用包
因为功能太多了,一个py文件写不下了,所以就打包成为一个众多功能的集合体
3 如何使用包
请看run
#! /usr/bin/env python # -*- coding: utf-8 -*- import sys sys.path.append(r'/Users/lich/PycharmProjects/OldBoy_3rd_python/python开发之路-作业/04 第四篇:模块与包/博客笔记') import aaa #aaa是指向包下的__init__.py # print(aaa.x) # aaa.f1() # aaa.f2() # aaa.f3() aaa.f1() aaa.f2() aaa.f3()
#! /usr/bin/env python # -*- coding: utf-8 -*- print('__init__') x = 111 #绝对导入,从顶级文件夹开始寻找,from导入子级文件夹里面的功能 # from aaa.m1 import f1 # from aaa.m2 import f2 # from aaa.bbb.m3 import f3 # from aaa.bbb import m3 #相对导入 from .m1 import f1 from .m2 import f2 from .bbb.m3 import f3
#! /usr/bin/env python # -*- coding: utf-8 -*- def f1(): print('m1,f1')
#! /usr/bin/env python # -*- coding: utf-8 -*- def f2(): print('m2,f2')
#! /usr/bin/env python # -*- coding: utf-8 -*- from aaa.bbb.m3 import f3
def f3(): print('m3.f3')
总结:你在哪个文件中要用功能x,就到这个文件所在目录的__init__.py中将功能x导入即可。