Day15模块(导入,使用)
Day15模塊
什么是模塊:
一系列功能的集合體
一個py文件就是一個模塊
aaa.py就是aaa模塊
模塊四種形式:
內(nèi)置的模塊
py文件
第三方的
包
模塊三種來源:內(nèi)置的,第三方,自定義
為什么要用模塊
1.使用內(nèi)置的或者第三方的好處是拿來主義,極大提升開發(fā)效率
2.使用自定義模塊的好處是,將程序各部分組件共用的功能提取出來放到一個模塊內(nèi),其他組件通過導(dǎo)入使用,減少代碼冗余
如何用模塊(py文件):
首次導(dǎo)入模塊
1.產(chǎn)生一個模塊的名稱空間
2.執(zhí)行模塊內(nèi)代碼,將產(chǎn)生的名字放入模塊的名稱空間內(nèi)
3.在當前執(zhí)行文件中拿到模塊名字,名字指向模塊的名稱空間
之后的導(dǎo)入直接引用首次導(dǎo)入的成果
使用
模塊名.(變量or函數(shù)名)
補充:
import spam as sm
模塊名純小寫加下劃線
模塊名不能以數(shù)字開頭,避免中文定義模塊名
import spam 與 from spam import read區(qū)別
首次導(dǎo)入前兩步與import導(dǎo)入一樣,第三步不一樣,在當前執(zhí)行文件中拿到名字money,該名字指向模塊的名稱空間中的money
money如果是不可變類型,在模塊中改變這個money,不會影響執(zhí)行文件中的money
如果是可變類型,在模塊中改變這個money,執(zhí)行文件中的money會隨之改變
import 總結(jié)
優(yōu)點:引用模塊中的名字必須加前綴(模塊名.),指名道姓的問某一個名稱空間要名字,不會與當前執(zhí)行文件名稱空間沖突
缺點:不夠簡潔
from ..import
優(yōu)點,引用模塊中的名字不用加前綴,使用更為簡潔
缺點:容易與當前執(zhí)行文件名稱空間中的名字沖突
from .. import * 代表所有名字調(diào)用
最好不要用
模塊的查找順序
1.內(nèi)存
2.內(nèi)置模塊
3.sys.path(執(zhí)行文件為準)
pycharm為了識別目錄結(jié)構(gòu),它把項目根文件夾放入環(huán)境變量
所以執(zhí)行文件的環(huán)境變量導(dǎo)入后,其他模塊導(dǎo)入的時候就不用
應(yīng)該把項目的根目錄加到環(huán)境變量里
應(yīng)該把項目的根目錄所在絕對路徑拿到,然后加到環(huán)境變量里
import os
os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
把啟動文件直接放在根目錄下,可以避免更新環(huán)境變量和模塊導(dǎo)入時找不到模塊的問題(前提是采用from文件夾名導(dǎo)入模塊)
轉(zhuǎn)載于:https://www.cnblogs.com/robert-zhou/p/10064072.html
總結(jié)
以上是生活随笔為你收集整理的Day15模块(导入,使用)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 支付宝国泰基金是什么
- 下一篇: 20181127-1附加作业 软件工程原