匯入模組 和 包

2022-05-30 01:18:08 字數 2783 閱讀 9001

一 模組

模組一共三種:

python標準庫

第三方模組

應用程式自定義模組

在cmd命令終端,檢視命令os 來自第三方

time模組來自第三方

模組兩種執行方式:

1 用於啟動執行

2 用於被呼叫執行

key:import module:

將執行檔案(module)的目錄路徑插入到sys.path的第乙個位置

import的兩個過程:

修改呼叫模組的名字:import logging as log

from 模組 import 變數名

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

二 包(package)

模組非常多,不好找,組織模組的方式:包

在python中,包可以理解成乙個資料夾,但是沒乙個資料夾裡必須要有

乙個__init__檔案

2.1 from  包  import   模組    #格式

但乙個py檔案和另乙個要被引用的檔案不在同級目錄裡,就用    from  包  import   模組 

#logger.py檔案,,被引用的檔案

import logging  #logging是第三方模組,

附上目錄裡麵包和.py 檔案的樹狀結構

#bin是啟動檔案,要引用logger檔案  ,不再同級別,就用from 包import 模組

#improt logger   #直接呼叫,不在同級目錄下,就無法引用

#from 包import 模組#引入模組

from log import logger #要用from 這種格式引用logger模組

logger_obj=logger.get_logger()

logger_obj.error('error')

再呼叫sc_cal 模組的方法  ,模組名+方法(函式)   sc_cal.add()

在哪個檔案裡執行,哪個檔案就是啟動檔案,就會先從這個檔案開始啟動

如果bin的檔案位置發生變動,就要再新增路徑

2.2 同級目錄下的被呼叫模組之間的相互呼叫

2.3 if __name__=='__main__':

這個表示執行的是此**所在的檔案。 如果這個檔案是作為模組被其他檔案呼叫,不會執行這裡面的**。 只有執行這個檔案時, if 裡面的語句才會被執行。 這個功能經常可以用於進行測試

1.python檔案的字尾為.py;

2..py檔案既可以用來直接執行,就像乙個小程式一樣,也可以用來作為模組被匯入(比如360安全衛士,就是依靠乙個個功能模組來實現的,好比360安全衛士本身框架是乙個桌面,而上面的圖示就是快捷方式,這些快捷方式所指向的就是這乙個個功能模組)

3.在python中匯入模組一般使用的是import

好了,在確定知道以上幾點之後,就可以開始解釋if __name__ == "__main__":這個語句了。

首先解釋一下if,顧名思義,if就是如果的意思,在句子開始處加上if,就說明,這個句子是乙個條件語句。學習if語句的使用是很簡單的,當然想要真正靈活運用還需大量的實踐。

接著是 __name__,__name__作為模組的內建屬性,簡單點說呢,就是.py檔案的呼叫方式。

最後是__main__,剛才我也提過,.py檔案有兩種使用方式:作為模組被呼叫和直接使用。如果它等於"__main__"就表示是直接執行。

總結:在if __name__ == "__main__":之後的語句作為模組被呼叫的時候,語句之後的**不執行;直接使用的時候,語句之後的**執行。通常,此語句用於模組測試中使用。

2.4 from 包.包 import 模組

from 包.包.模組 import 變數名字

2.5 __init__檔案的作用

__init__.py 檔案的作用是將資料夾變為乙個python模組,python 中的每個模組的包中,都有__init__.py 檔案。

通常__init__.py 檔案為空,但是我們還可以為它增加其他的功能。我們在匯入乙個包時,實際上是匯入了它的__init__.py檔案。這樣我們可以在__init__.py檔案中批量匯入我們所需要的模組,而不再需要乙個乙個的匯入。

匯入模組 包

什麼是模組 乙個模組就是包含了python定義和宣告的檔案,檔名就是模組名字加上.py 但其實import載入的模組分為4個通用類別。1 使用python編寫的 2 已被編譯為共享庫或dll的c或c 擴充套件 3 包好一組模組的包 4 使用c編寫並鏈結到python直譯器的內建模組 如何匯入模組 同...

python深入之包和模組,包和模組的匯入方式

關於包和模組 2 包 是乙個有層級的目錄結構,包含n個模組或者n個子包,包中一定要有 init py檔案 3 庫 是完成一定功能的 集合,表現形式是乙個模組,或包 4 框架 是乙個架構層面的概念,為解決乙個開放性問題而設計的具有一定約束性的支撐結構,通過框架可以快速實現乙個解決問題的骨架,後面按照框...

python模組匯入與模組包匯入

main.py程式第一次匯入指定檔案mod.py時,執行 找到模組檔案mod.py 編譯成位元組碼 可選 執行.pyc位元組碼,建立mod.py中定義的物件。匯入模組後,模組物件會被儲存在sys.modules的表中。每次匯入時,若此表中已存在相關模組,以上3步會被跳過。1.搜尋模組檔案 按順序 程...