#模組和包#import
#在import的過程發生了那些事情
#import 乙個模組相當執行了這個模組
# 乙個模組不能被重複匯入
#模組和檔案之間的記憶體空間是隔離的
#模組的名字必須要符合變數命名規範
#1.尋找模組
#2.如果找到了,就開闢乙個空間,執行這個模組
#3.把這個模組中用到的名字都收錄到新開闢的空間中
#4.建立乙個變數來引用這個模組的空間
#被匯入的模組和本檔案之間命名空間的關係
#import 多個模組
#注意:
#import os
#import time
#遵循順序 內建 第三方 自定義
#pep8規範
#給匯入的模組起別名
#格式 import 模組 as 別名
#注意 有了別名之後,就不能直接用模組.屬性而需要用別名.屬性
#模組搜尋路徑
#正常的sys.path 中 不包括內建和第三方模組
# import sys
# print(sys.path) #只看列表中的第乙個就是當前檔案的路徑
#乙個模組是否被匯入就看這個模組所在的目錄在不在這個sys.modules 中
# import sys
# import my_module #自定義的乙個模組
# print(sys.modules) #字典中含有my_module 的路徑
#模組和指令碼
#倆種執行乙個py檔案的方法
#1直接執行 或者 在cmd 中執行 和在pycharm 中run執行,都是指令碼
#2被import匯入的 就是模組
#模組 from 模組 import 屬性
#例 from my_module import name
# print(name)
#2 不推薦使用 了解
#from my_module inport * #*號表示模組中的所有屬性。
# print(name) #可以直接使用模組中的屬性
# read()
#在from import的過程發生的事
#1 要找到 這個模組
#開空間,執行這個模組檔案
#將所以模組檔案的屬性都儲存在模組所屬空間中
#建立乙個引用屬性,
#補充內容:
#1.pyc檔案,pyi檔案
#pyc 只能提高程式的啟動效率並不能提高程式的執行效率
#2.模組的匯入和修改
#匯入之後,執行屬性,然後再改模組中的屬性,再執行屬性,屬性不會變
# import time
# import my_module #匯入模組
# print(my_module.name) #alex
# time.sleep(10) #暫停十秒,修改模組中屬性
# import my_module
# print(my_module.name) #alex #不變
#如果要修改的話 匯入乙個新的模組 from importlib import reload
# from importlib import reload
# import time
# import my_module #匯入模組
# print(my_module.name) #alex
# time.sleep(10) #暫停十秒,修改模組中屬性
# reload(my_module)
# print(my_module.name) #tiantian #屬性以變
#3.模組的迴圈引用
#不能迴圈
#4.dir(模組名)
#可以獲取這個模組的名字
#包#什麼是包 package
#含有乙個__init__.py的資料夾就是乙個包
#包含中通常含有一些py檔案
# #從包匯入模組 ****
# import glance2.api.policy as policy #as 別名
# policy.get()
#匯入包
#絕對匯入
#匯入包的過程中的發生了什麼事
#相當於執行了包中的__init__.py檔案
#sys.path 中的內容,永遠是當前你執行的檔案
#相對匯入 運用了相對匯入的檔案不能被直接執行
# '.'表示當前目錄
# '..'表示上一級目錄
專案結構
importosimport
sysbase_path =os.path.dirname(os.path.dirname(os.path.abspath(__file__
from core import
core
if__name__ == '
__main__':
core.main()
建立模組專案包
1 為支撐模組中的基礎模組建立專案包 2 為支撐模組中的許可權模組建立專案包 3 為支撐模組中的系統模組建立專案包 4 為應用模組建立專案包 第一步 建立基礎模組專案包com.common.platform.base 第二步 建立許可權模組專案包com.common.platform.auth 第三...
python模組與包
路徑修改 命令列怎麼檢視路徑,修改路徑 列印當前搜尋路徑 import sys sys.path sys.path import os os.getcwd os.chdir c www 模組實現構建模組的初衷就是將一些同類的東西進行打包,以免汙染全域性空間,在python的模組裡,對需要隱藏的屬性和...
python 模組與包
模組與包 1.什麼是模組 在 python 中,乙個.py檔案就稱之為乙個模組 module 模組的優點 大大提高了 的可維護性 編寫 不必從零開始。當乙個模組編寫完畢,就可以被其他地方引用 2.匯入模組的幾種方式 4.模組的分類 1 內建模組 os,sys,dnspython,socket,tim...