1、模組的定義:模組定義:用來邏輯上組織python**(變數、函式、類、邏輯;目的是:實現乙個功能),本質就是.py結尾的python檔案。補充:包的定義:用來從邏輯組織模組的,本質就是乙個目錄(必須帶有乙個__init__.py檔案)
2、匯入方法:
匯入模組的方法:
1.import module_name 匯入乙個模組
使用的時候需要加上字首module_name.name
2.import module_name,module2_name 匯入多個模組
3.from module_name import * 匯入module_name模組裡邊的所有變數,不建議使用!
4.from module_name import name 只匯入module_name裡邊的name解釋了一遍。
使用的時候直接 name 呼叫即可
import 和from 的區別
1.import 的時候 module_name.logger()
2.from 的時候 logger() 直接執行;from的時候等於把所有**都複製了乙份,執行一下。
直譯器:做的事就是指定乙個變數 並指向乙個記憶體位址,將**內容放在了記憶體位址裡邊。
匯入包的方法:
import 包的名字
多級目錄匯入方法:(路徑搜尋和搜尋路徑)
匯入模組的本質: 就是把python檔案解釋一遍
分析:import module_name - - -》就是要解釋module_name.py- - -》首先要找到module_name.py的位置- - -》查詢系統路徑sys.path,當前路徑優先。
匯入包的本質:就是執行該包下的__init__.py檔案
匯入包下邊的test1.py檔案
1.修改__init__.py檔案,匯入包下邊的py檔案
from . imprt test1
#import test1
2.在py檔案中匯入包下邊的模組test1.py檔案
4、匯入優化
例如:優化前:
module_test.pyview codedeftest():
print ("
in the test!")
test.py
import
module_test
deflogger():
module_test.test()
print("
in the logger!")
defsearch():
module_test.test()
print("
in the search!
")
優化後:
module_test.pyview codedeftest():
print ("
in the test!")
test.py
from module_test import
test
deflogger():
test()
print("
in the logger!")
defsearch():
test()
print("
in the search!
")
注意:如果匯入模組的方法和目前環境中有衝突,匯入的時候可以設定別名:from module_test import test as test01
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 匯...
python匯入模組
python匯入模組分為2種 1import 模組名 也可以2 modulename haha 模組字串 然後 m import mymodule 下面方法就可以用python 動態建立類 如果要取得模組中的乙個屬性的話 可以用getattr 比如 c getattr m,myclass myobj...