18 模組匯入

2022-07-08 13:15:13 字數 1791 閱讀 5441

#檔案就是乙個模組,資料夾就是乙個包

#資料夾裡面可以有很多檔案,就相當於包中有好多的模組.

import 模組或者包(包是資料夾,模組是檔案)

模組不會被重複匯入,引入一次終生受益

1.匯入模組
# 1.import 引入模組

"""import ...as..改名

呼叫: 模組.變數

模組.函式

模組.類

"""import module as jia #從資料夾引入模組

print(jia.name) #賈英賀

jia.func() #我是好人

# 2.匯入任意檔案下的模組

import sys

"""import導模組的時候,會從sys.path提供的路徑下去找,找不到就報錯

可以把要匯入模組的路徑新增到sys.path路徑裡

"""# 3.from ...import ... 從**匯入..(變數,函式,類,模組)

"""呼叫 : 直接呼叫,不需要再 . 了

"""# 匯入單個成員

from module import name

print(name)

# 匯入多個成員

from module import name,func

func()

# 匯入所有成員(*)

"""在被呼叫檔案中,可以用魔術方法__all__=限制匯入所有*

列表成員: ["變數名","函式名","類名"]

"""from module import *

# 4.返回模組名字的魔術屬性 : __name__

"""如果當前檔案是直接執行的,返回"__main__"字串

如果當前檔案是間接匯入的,返回當前檔名

作用: 防止其他檔案引入測試**

module檔案下測試**

if __name__=="__main__":

print(name)

func()

"""print(__name__) #__main__

2.匯入包
# 1.單入口模式:只通過主檔案來呼叫分模組內容,分模組不單獨執行

"""單入口檔案必須和包在同一層級,包裡面可以含有各種包和模組

分模組不能單獨進行呼叫,統一由主檔案main進行呼叫

模組之間的互相巢狀匯入,使用相對路徑實現

"""import package2.pkg_one.pkgone_1 as pp

#在pkgone_1檔案下,可以使用相對路徑匯入(模組或模組中的具體成員)

"""相對路徑:

. 當前路徑

.. 上一級路徑

... 上一級的上一級

..... (這裡的點是無限的)

引入模組:

from . import pkg 相對於當前路徑引入模組

from .pko2 import ceshi204 相對於當前模組引入具體屬性

from .. import pkg2_module1 相對於上一級引入模組

from ..pkg2_two import pkt1 相對於上一級的某個包引入模

"""# 2.匯入包 import

"""檔案=>模組 資料夾=>包

當import 資料夾時,會自動呼叫__init__.py初始化檔案;

可以通過初始化檔案__init__.py引入其他模組:

需要絕對路徑,從引入包同一級檔案開始引入模組

"""

python模組匯入與模組包匯入

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

python 匯入模組

最近開始學習python,遇到一些匯入模組的問題,花了幾分鐘終於琢磨明白了,給初學者介紹幾種型別 一 test sys test1 nv1.py nv2.py nv1.py 如下 classdog defadd self a,b self.a a self.b b c self.a self.b r...

python匯入模組

1 模組的定義 模組定義 用來邏輯上組織python 變數 函式 類 邏輯 目的是 實現乙個功能 本質就是.py結尾的python檔案。補充 包的定義 用來從邏輯組織模組的,本質就是乙個目錄 必須帶有乙個 init py檔案 2 匯入方法 匯入模組的方法 1.import module name 匯...