Python四种形式模块的形式与调用
一、什么是模塊?
模塊是一系列功能的集合體,而函數(shù)是某一個(gè)功能的集合體,因此模塊可以看成是一堆函數(shù)的集合體。一個(gè)py文件內(nèi)部就可以放一堆函數(shù),因此一個(gè)py文件就可以看成一個(gè)模塊。如果這個(gè)py文件的文件名為module.py,模塊名則是module。
簡(jiǎn)單來(lái)說(shuō),模塊就是一個(gè)py文件, 這個(gè)py文件有一大堆函數(shù)
二、模塊的四種形式
在Python中,總共有以下四種形式的模塊:
- 自定義模塊:如果你自己寫一個(gè)py文件,在文件內(nèi)寫入一堆函數(shù),則它被稱為自定義模塊,即使用python編寫的.py文件
- 第三方模塊: 需要自己安裝 13萬(wàn)個(gè)第三方庫(kù) ,無(wú)所不能,寫庫(kù)(弄得更簡(jiǎn)單)
- 內(nèi)置模塊:內(nèi)置模塊: python解釋器自帶的,不需要安裝
- 包:含有__inti__.py的文件夾,一種特殊的模塊(解決了一個(gè)問題)
三、為什么要用模塊
- 用第三方或者內(nèi)置的模塊是一種拿來(lái)主義,可以極大地提升開發(fā)效率。
- 自定義模塊,將我們自己程序中用到的公共功能,寫入一個(gè)python文件,然后程序的各部分組件可以通過(guò)導(dǎo)入的方式來(lái)引用自定義模塊的功能。
四、如何用模塊
一般我們使用import和from…import…導(dǎo)入模塊。
import 和from import
python看成一個(gè)手機(jī),pip是應(yīng)用管家,time就是應(yīng)用管家里的一個(gè)應(yīng)用,要用它,import
一、import 模塊
import首次導(dǎo)入模塊發(fā)生了3件事
1、以模塊為準(zhǔn)創(chuàng)建一個(gè)模塊的名稱空間
2、執(zhí)行模塊對(duì)應(yīng)的文件,將執(zhí)行過(guò)程中產(chǎn)生的名字都丟到模塊的名稱空間
3、在當(dāng)前執(zhí)行文件中拿到一個(gè)模塊名
列如:
import timeimport 發(fā)生的3件事情 1. 在內(nèi)存中生成一個(gè)叫做time的名稱空間 2. 運(yùn)行time.py文件,然后把time.py文件內(nèi)的名稱空間放入time的名稱空間內(nèi) 3. 把time的名稱空間指向 import和from...impot.py(當(dāng)前導(dǎo)入time模塊的文件) 的名稱空間中 #Python學(xué)習(xí)交流QQ群:579817333 使用import time導(dǎo)入的時(shí)候,使用方法只能 time.方法名() ,不能直接方法名二、from模塊名 import具體的功能
from…import…首次導(dǎo)入模塊發(fā)生了3件事:
- 以模塊為準(zhǔn)創(chuàng)造一個(gè)模塊的名稱空間
- 執(zhí)行模塊對(duì)應(yīng)的文件,將執(zhí)行過(guò)程中產(chǎn)生的名字都丟到模塊的名稱空間
- 在當(dāng)前執(zhí)行文件的名稱空間中拿到一個(gè)名字,該名字直接指向模塊中的某一個(gè)名字,意味著可以不用加任何前綴而直接使用
導(dǎo)入文件內(nèi)所有的功能:
# spam.py __all__ = ['money', 'read1'] # 只允許導(dǎo)入'money'和'read1'(寫在本文件夾下面)# run.py from spam import * # 導(dǎo)入spam.py內(nèi)的所有功能,但會(huì)受限制于__all__三、import和from...import...的異同
相同點(diǎn)
? 1、兩者都會(huì)執(zhí)行模塊對(duì)應(yīng)的文件,兩者都會(huì)產(chǎn)生模塊的名稱空間
? 2、兩者調(diào)用功能時(shí),需要跑到定義時(shí)尋找作用域空間,與調(diào)用位置無(wú)關(guān)
不同點(diǎn)
? 3、import需要加前綴;from…import…不需要加
總結(jié)
以上是生活随笔為你收集整理的Python四种形式模块的形式与调用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 5道不一样的Python基础题练习题,很
- 下一篇: Python对文件的三种打开方式以及wi