欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python中模塊導(dǎo)入模式詳解

 更新時(shí)間:2022年07月28日 15:45:54   作者:Java學(xué)術(shù)趴  
這篇文章主要為大家介紹了python中模塊導(dǎo)入的模式詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

模塊導(dǎo)入

1.1 import導(dǎo)入模塊

  • 所謂的模塊其實(shí)就是一個(gè)外部的工具包,其中存在的其實(shí)就是Python文件,這些文件都實(shí)現(xiàn)了某種特定的功能,我們導(dǎo)入包之后直接使用即可,非常的方便。
  • 在開發(fā)中使用最多的就是使用: import 方式進(jìn)行導(dǎo)入。導(dǎo)入的包一般放在文件的最前面。
  • 語法格式 : import 模塊名
# 導(dǎo)入時(shí)間模塊
import timr
# 使用時(shí)間模塊中的方法
time.ctime()
  • 調(diào)用模塊方法的語法格式: 模塊名.函數(shù)名 ,這樣調(diào)用可以防止不同模塊中有同名方法導(dǎo)致錯(cuò)誤。

1.2 from 模塊名 import 導(dǎo)入模板的方法

  • 一個(gè)模塊可能存在很多的函數(shù),如果只是想導(dǎo)入其中的幾個(gè)函數(shù),可以使用from xxx import xxx 方式導(dǎo)入。
  • 使用這種方式導(dǎo)入之后不用在使用 模塊名.函數(shù)名 的方式來調(diào)用函數(shù),可以直接使用 函數(shù)名。但是一定要注意這種形式可能會(huì)產(chǎn)生覆蓋的情況,當(dāng)導(dǎo)入了兩個(gè)不同包中的同名的函數(shù)的時(shí)候,第二個(gè)函數(shù)會(huì)覆蓋第一個(gè)函數(shù)

舉例:只想導(dǎo)入time模塊中的ctime、time兩個(gè)方法,可以按照以下的格式導(dǎo)入:

# 導(dǎo)入模塊中指定的方法
from time import ctime,time
# 調(diào)用方法
ctime()
time()

注意:使用from導(dǎo)入,如果函數(shù)名相同,后面導(dǎo)入的會(huì)覆蓋前面導(dǎo)入的函數(shù)。

  • 可以一次性的把一個(gè)模塊中的全部數(shù)據(jù)進(jìn)行導(dǎo)入。 語法格式: from xxx import *
from time import *

1.3 as 關(guān)鍵字

  • as關(guān)鍵字:給模塊取別名,有時(shí)候?qū)氲哪K的名稱很長(zhǎng),調(diào)用的時(shí)候很不方便,使用as關(guān)鍵字就可以給模塊取一個(gè)其他的名字。
  • 當(dāng)給模塊起了別名之后以前模塊的名字就會(huì)失效。
import time as myTime
# 使用別名調(diào)用函數(shù),正確
myTime.ctime()
# 使用以前模塊的名字調(diào)用,錯(cuò)誤
time.ctime()

OS模塊操作文件

OS模塊的作用

  • 對(duì)文件進(jìn)行重命名、刪除等一些操作,在Python中可以利用os模塊。 os模塊提供了一些系統(tǒng)級(jí)別的操作命令

模塊的制作、發(fā)布、安裝

3.1 模塊制作

  • Python文件都可以作為一個(gè)模塊,模塊的名字就是文件的名字。比如創(chuàng)建一個(gè)test.py文件,文件中創(chuàng)建一個(gè)add()函數(shù)。此時(shí)test.py文件就是一個(gè)模塊,可以在其他的python文件中直接引入使用。
  • 一個(gè)模塊中可以包含函數(shù)、類、變量,也能包含可執(zhí)行的代碼。
  • 不同的模塊可以定義相同的變量名,但是每個(gè)模塊中的變量名作用域只是在本模塊中。

3.2 模塊的分

內(nèi)置:python已經(jīng)存在的。

自定義:我們自己編寫的功能模塊。

3.3 示例

  • 定義一個(gè)相加的功能模塊 (addUp.python 文件)
# 定義一個(gè)執(zhí)行相加的功能模塊
def add(x, y):
    return x + y
  • 在其他文件中引入并使用這個(gè)相加的功能模塊
# 引入相加的功能模塊(給模塊起別名) 引入整個(gè)模塊
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 測(cè)試方法

重點(diǎn):在功能模塊中對(duì)模塊進(jìn)行測(cè)試的時(shí)候,需要使用如下的格式

# 定義一個(gè)執(zhí)行相加的功能模塊
def add(x, y):
    return x + y
# 測(cè)試該模塊中的功能。使用這種形式測(cè)試就不會(huì)發(fā)生其他文件在使用這個(gè)功能模塊的時(shí)候輸出這個(gè)測(cè)試結(jié)果
# 是因?yàn)榇藭r(shí)被這個(gè) if 條件進(jìn)行了控制
if __name__ == '__main__':
    # 測(cè)試功能模塊中的函數(shù)
    res = add(1, 3)
    print('測(cè)試模塊中的add函數(shù)的結(jié)果:%s' % res)
    # 測(cè)試模塊中的add函數(shù)的結(jié)果:4
    pass

3.5 all魔術(shù)方法

  • 指定對(duì)外暴露的功能函數(shù)。
# all 魔術(shù)方法可以存儲(chǔ)讓其暴露在外的函數(shù)們,將一些函數(shù)不對(duì)外暴露
# 注意:只有當(dāng)調(diào)用者使用的是 from addUp import * 這種形式的時(shí)候all魔術(shù)方法才會(huì)生效
#      如果使用 from addUp import multiply ,add ,subtract 方式,all也不會(huì)生效
#      如果是使用 import 模塊名 的形式這個(gè) all 不會(huì)生效,這個(gè)模塊中的所有方法還是全部可以暴露的。
# 總結(jié):all魔術(shù)方法只會(huì)對(duì) 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
# 測(cè)試該模塊中的功能
if __name__ == '__main__':
    # 測(cè)試功能模塊中的函數(shù)
    res = add(1, 3)
    print('測(cè)試模塊中的add函數(shù)的結(jié)果:%s' % res)
    # 測(cè)試模塊中的add函數(shù)的結(jié)果:4
    pass

以上就是python中模塊導(dǎo)入模式詳解的詳細(xì)內(nèi)容,更多關(guān)于python模塊導(dǎo)入模式的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論