python中模塊導(dǎo)入模式詳解
更新時間:2022年07月28日 15:45:54 作者:Java學(xué)術(shù)趴
這篇文章主要為大家介紹了python中模塊導(dǎo)入的模式詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
模塊導(dǎo)入
1.1 import導(dǎo)入模塊
- 所謂的模塊其實就是一個外部的工具包,其中存在的其實就是Python文件,這些文件都實現(xiàn)了某種特定的功能,我們導(dǎo)入包之后直接使用即可,非常的方便。
- 在開發(fā)中使用最多的就是使用: import 方式進行導(dǎo)入。導(dǎo)入的包一般放在文件的最前面。
- 語法格式 : import 模塊名
# 導(dǎo)入時間模塊 import timr # 使用時間模塊中的方法 time.ctime()
- 調(diào)用模塊方法的語法格式: 模塊名.函數(shù)名 ,這樣調(diào)用可以防止不同模塊中有同名方法導(dǎo)致錯誤。
1.2 from 模塊名 import 導(dǎo)入模板的方法
- 一個模塊可能存在很多的函數(shù),如果只是想導(dǎo)入其中的幾個函數(shù),可以使用from xxx import xxx 方式導(dǎo)入。
- 使用這種方式導(dǎo)入之后不用在使用 模塊名.函數(shù)名 的方式來調(diào)用函數(shù),可以直接使用 函數(shù)名。但是一定要注意這種形式可能會產(chǎn)生覆蓋的情況,當(dāng)導(dǎo)入了兩個不同包中的同名的函數(shù)的時候,第二個函數(shù)會覆蓋第一個函數(shù)
舉例:只想導(dǎo)入time模塊中的ctime、time兩個方法,可以按照以下的格式導(dǎo)入:
# 導(dǎo)入模塊中指定的方法 from time import ctime,time # 調(diào)用方法 ctime() time()
注意:使用from導(dǎo)入,如果函數(shù)名相同,后面導(dǎo)入的會覆蓋前面導(dǎo)入的函數(shù)。
- 可以一次性的把一個模塊中的全部數(shù)據(jù)進行導(dǎo)入。 語法格式: from xxx import *
from time import *
1.3 as 關(guān)鍵字
- as關(guān)鍵字:給模塊取別名,有時候?qū)氲哪K的名稱很長,調(diào)用的時候很不方便,使用as關(guān)鍵字就可以給模塊取一個其他的名字。
- 當(dāng)給模塊起了別名之后以前模塊的名字就會失效。
import time as myTime # 使用別名調(diào)用函數(shù),正確 myTime.ctime() # 使用以前模塊的名字調(diào)用,錯誤 time.ctime()
OS模塊操作文件
OS模塊的作用
- 對文件進行重命名、刪除等一些操作,在Python中可以利用os模塊。 os模塊提供了一些系統(tǒng)級別的操作命令

模塊的制作、發(fā)布、安裝
3.1 模塊制作
- Python文件都可以作為一個模塊,模塊的名字就是文件的名字。比如創(chuàng)建一個test.py文件,文件中創(chuàng)建一個add()函數(shù)。此時test.py文件就是一個模塊,可以在其他的python文件中直接引入使用。
- 一個模塊中可以包含函數(shù)、類、變量,也能包含可執(zhí)行的代碼。
- 不同的模塊可以定義相同的變量名,但是每個模塊中的變量名作用域只是在本模塊中。
3.2 模塊的分
內(nèi)置:python已經(jīng)存在的。
自定義:我們自己編寫的功能模塊。
3.3 示例
- 定義一個相加的功能模塊 (addUp.python 文件)
# 定義一個執(zhí)行相加的功能模塊
def add(x, y):
return x + y- 在其他文件中引入并使用這個相加的功能模塊
# 引入相加的功能模塊(給模塊起別名) 引入整個模塊 import addUp as add # 使用引入模塊中的函數(shù) (模塊名.方法名) print(add.add(1, 2)) # 3
# 直接引入模塊中的指定函數(shù) from addUp import add # 使用引入模塊中的函數(shù) (函數(shù)名) print(add(1, 2)) # 3
# 導(dǎo)入模塊中的所有函數(shù) from addUp import * # 使用引入模塊中的函數(shù) print(add(1, 2)) # 3
3.4 測試方法
重點:在功能模塊中對模塊進行測試的時候,需要使用如下的格式
# 定義一個執(zhí)行相加的功能模塊
def add(x, y):
return x + y
# 測試該模塊中的功能。使用這種形式測試就不會發(fā)生其他文件在使用這個功能模塊的時候輸出這個測試結(jié)果
# 是因為此時被這個 if 條件進行了控制
if __name__ == '__main__':
# 測試功能模塊中的函數(shù)
res = add(1, 3)
print('測試模塊中的add函數(shù)的結(jié)果:%s' % res)
# 測試模塊中的add函數(shù)的結(jié)果:4
pass3.5 all魔術(shù)方法
- 指定對外暴露的功能函數(shù)。
# all 魔術(shù)方法可以存儲讓其暴露在外的函數(shù)們,將一些函數(shù)不對外暴露
# 注意:只有當(dāng)調(diào)用者使用的是 from addUp import * 這種形式的時候all魔術(shù)方法才會生效
# 如果使用 from addUp import multiply ,add ,subtract 方式,all也不會生效
# 如果是使用 import 模塊名 的形式這個 all 不會生效,這個模塊中的所有方法還是全部可以暴露的。
# 總結(jié):all魔術(shù)方法只會對 from addUp import * 這種格式的導(dǎo)入生效
__all__ = ['add', 'subtract']
def add(x, y):
return x + y
def subtract(x, y):
return x - y
def multiply(x, y):
return x * y
# 測試該模塊中的功能
if __name__ == '__main__':
# 測試功能模塊中的函數(shù)
res = add(1, 3)
print('測試模塊中的add函數(shù)的結(jié)果:%s' % res)
# 測試模塊中的add函數(shù)的結(jié)果:4
pass以上就是python中模塊導(dǎo)入模式詳解的詳細內(nèi)容,更多關(guān)于python模塊導(dǎo)入模式的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
python數(shù)據(jù)可視化之初探?Seaborn
Seaborn?是一個基于?Matplotlib?的?Python?數(shù)據(jù)可視化庫,它提供了更高級別的接口,使得創(chuàng)建美觀的統(tǒng)計圖形變得非常簡單,在這篇文章中,我們將討論?Seaborn?的基礎(chǔ)使用方法,包括如何創(chuàng)建各種常見的統(tǒng)計圖形2023-07-07

