Python 7天快速入門完整視頻教程:https://www.bilibili.com/video/BV1o84y1Z7J1
Python 包
對(duì)于一個(gè)需要實(shí)際應(yīng)用的模塊而言,往往會(huì)具有很多程序單元,包括變量、函數(shù)和類等,如果將整個(gè)模塊的所有內(nèi)容都定義在同一個(gè)Python源文件中,這個(gè)文件將會(huì)變得非常龐大,顯然并不利于模塊化開(kāi)發(fā)。
為了更好地管理多個(gè)模塊源文件,Python提供了包的概念。那么問(wèn)題來(lái)了,什么是包呢?
從物理上看,包就是一個(gè)文件夾,在該文件夾下包含了一個(gè)_ init.py文件,該文件夾可用于包含多個(gè)模塊源文件。
從邏輯上看,包的本質(zhì)依然是模塊。
我們右擊項(xiàng)目 Python Package,就是新建包
pycharm自動(dòng)給我們創(chuàng)建_ init _py文件
再新建兩個(gè)模塊,分別是module1.py和module2.py
使用方法,相對(duì)之前的導(dǎo)入方式,前面要加上包名
導(dǎo)入整個(gè)模塊 import 包名.模塊名
import my_package.module1
import my_package.module2
my_package.module1.test1()
my_package.module2.test2()
導(dǎo)入模塊中指定成員 from 包名 import 模塊名.成員名
# from my_package import module1
# from my_package import module2
#
# module1.test1()
# module2.test2()
# from my_package import module1, module2
#
# module1.test1()
# module2.test2()
from my_package.module1 import test1
from my_package.module2 import test2
test1()
test2()
我們可以在 init.py文件里控制暴露的模塊,通過(guò)all=[]指定
__all__ = ['module1']
測(cè)試:
from my_package import *
module1.test1()