溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Python中怎么引入和調(diào)用模塊

發(fā)布時(shí)間:2021-07-05 18:15:33 來(lái)源:億速云 閱讀:207 作者:Leah 欄目:編程語(yǔ)言

這篇文章將為大家詳細(xì)講解有關(guān)Python中怎么引入和調(diào)用模塊,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

1. import

在Python中用關(guān)鍵字import來(lái)引入某個(gè)模塊,比如要引用模塊math,就可以在文件最開(kāi)始的地方用import math來(lái)引入。

形如 :

import module1,mudule2...

當(dāng)解釋器遇到import語(yǔ)句,如果模塊在當(dāng)前的搜索路徑就會(huì)被導(dǎo)入。

在調(diào)用math模塊中的函數(shù)時(shí),必須這樣引用:

模塊名.函數(shù)名

為什么必須加上模塊名調(diào)用呢?

因?yàn)榭赡艽嬖谶@樣一種情況:在多個(gè)模塊中含有相同名稱(chēng)的函數(shù),此時(shí)如果只是通過(guò)函數(shù)名來(lái)調(diào)用,解釋器無(wú)法知道到底要調(diào)用哪個(gè)函數(shù)。所以如果像上述這樣引入模塊的時(shí)候,調(diào)用函數(shù)必須加上模塊名。

import math   #這樣會(huì)報(bào)錯(cuò)  print sqrt(2)   #這樣才能正確輸出結(jié)果  print math.sqrt(2)

有時(shí)候我們只需要用到模塊中的某個(gè)函數(shù),只需要引入該函數(shù)即可,此時(shí)可以用下面方法實(shí)現(xiàn):

from 模塊名 import 函數(shù)名1,函數(shù)名2....

不僅可以引入函數(shù),還可以引入一些全局變量、類(lèi)等。

注意:

1.這種方式引入的時(shí)候,調(diào)用函數(shù)時(shí)只能給出函數(shù)名,不能給出模塊名,但是當(dāng)兩個(gè)模塊中含有相同名稱(chēng)函數(shù)的時(shí)候,后面一次引入會(huì)覆蓋前一次引入。也就是說(shuō)假如模塊A中有函數(shù)function(  ),在模塊B中也有函數(shù)function(  ),如果引入A中的function在先、B中的function在后,那么當(dāng)調(diào)用function函數(shù)的時(shí)候,是去執(zhí)行模塊B中的function函數(shù)。

2. 如果想一次性引入math中所有的東西,還可以通過(guò)from math import 來(lái)實(shí)現(xiàn)

2. from…import

Python的from語(yǔ)句讓你從模塊中導(dǎo)入一個(gè)指定的部分到當(dāng)前命名空間中。

語(yǔ)法如下:

from modname import name1[, name2[, ... nameN]]

例如,要導(dǎo)入模塊fib的fibonacci函數(shù),使用如下語(yǔ)句:

from fib import fibonacci

注意:

不會(huì)把整個(gè)fib模塊導(dǎo)入到當(dāng)前的命名空間中,它只會(huì)將fib里的fibonacci單個(gè)引入。

3. from … import *

把一個(gè)模塊的所有內(nèi)容全都導(dǎo)入到當(dāng)前的命名空間也是可行的,只需使用如下聲明:

from modname import *

注意:

這提供了一個(gè)簡(jiǎn)單的方法來(lái)導(dǎo)入一個(gè)模塊中的所有項(xiàng)目。然而這種聲明不該被過(guò)多地使用。

4 . 定位模塊

當(dāng)你導(dǎo)入一個(gè)模塊,Python解析器對(duì)模塊位置的搜索順序是:

  1. 鴻蒙官方戰(zhàn)略合作共建——HarmonyOS技術(shù)社區(qū)

  2. 當(dāng)前目錄

  3. 如果不在當(dāng)前目錄,Python則搜索在shell變量PYTHONPATH下的每個(gè)目錄。

  4. 如果都找不到,Python會(huì)察看默認(rèn)路徑。UNIX下,默認(rèn)路徑一般為/usr/local/lib/python/

  5. 模塊搜索路徑存儲(chǔ)在system模塊的sys.path變量中。變量里包含當(dāng)前目錄,PYTHONPATH和由安裝過(guò)程決定的默認(rèn)目錄。

三、as 的三種用法

1. with...as...

第一種是和with結(jié)合使用,主要用于文件的讀寫(xiě)操作,省去了關(guān)閉文件的麻煩。

寫(xiě)法:

with open("文件路徑","讀寫(xiě)方式") as 賦值變量:     #  執(zhí)行代碼塊

實(shí)例:

#test.py with open("1.txt") as f:     print f.read()  #1.txt(兩個(gè)文件在同一目錄下)

運(yùn)行結(jié)果:

Python中怎么引入和調(diào)用模塊

2. 導(dǎo)入模塊起別名

導(dǎo)入模塊是對(duì)模塊進(jìn)行重命名,也就是給模塊起一個(gè)別名。示例代碼在下方的第三點(diǎn)有演示。

3. except結(jié)合使用

第一種:給traceback模塊起別名為a

示例代碼 :

import traceback as a try:     while 1/0 < 0:         print True

第二種:和except組合使用,將捕獲到的異常對(duì)象賦值給e。

實(shí)例代碼 :

except Exception as e:     print "e=",e     a.print_exc()

關(guān)于Python中怎么引入和調(diào)用模塊就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI