python語法之模塊

一、定義python

是一系列功能的結合體,本質上一個個的.py文件,至關於模塊包着一堆函數體代碼。函數

 

二、三種來源spa

2.一、python內置的模塊:time , os ,sys, turtle 等code

2.二、第三方模塊:requestsblog

2.三、自定義模塊:本身寫的.py文件內存

 

三、四種表現形式作用域

3.一、使用python編寫的文件rem

3.二、編譯後共享的庫DLL或C或C++庫requests

3.三、包下面帶有__init__一組.py文件it

3.四、python解釋器下的.py文件-------- python解釋器下的文件夾-----------一個個的py文件

ps:包指的是內部包含__init__.py文件夾。

       包的做用:存放模塊,包能夠更好的管理模塊。

 

四、爲何要使用模塊

模塊能夠更好地幫咱們管理功能代碼,好比函數,變量名...

能夠將項目拆分紅一個個的功能,分別存放在不用的py文件(模塊)中。

 

五、模塊的使用

鼠標右鍵建立py文件,在py文件中編寫python代碼。

在一個文件中,經過import 關鍵字導入模塊。注意:import 導入模塊時,模塊名不能.py後綴。

當首次導入模塊時,會作三件事:

1 執行源文件代碼

2 產生一個新的名稱空間用於存放源文件執行過程當中產生的名字

3 在當前執行文件所在名稱空間中獲得一個名字func,更名字指向新建立的模塊名稱空間,若要引用模塊名臣空間中的名字,須要加上該前綴,以下

import os   #導入模塊
os.open()   #調用模塊os中的open函數

加上os. 做爲前綴就至關於說明要引用os名稱空間中的名字。

強調:第一次導入模塊已經將其加載到內存空間了,以後的重複導入會直接引用內存中已存在的模塊,不會重複執行文件。

 

六、import語句導入多個模塊

6.一、import語句

import module1
import module2
import module3
#
import module1,module2,module3

不建議第二種方式,第一種更規範,可讀性更強。

'''
分類導入:
1. python內置模塊 2.第三方模塊 3.自定義模塊 '''

文件開頭導入模塊屬於全局做用域,在函數體內導入模塊屬於局部做用域。

 

6.二、from-import語句

from os import open,remove,rename
open()
rename()
remove()
#無前綴的好處是代碼更簡潔,可是容易與當前名稱空間中的名字衝突,
# 若是當前名稱空間存在相同名字,後定義的名字會覆蓋以前定義的名字。

 

6.三、其餘導入語法as

import os as o
o.rename()

 

七、循環導入問題

解決方案1:導入語句放到最後,保證在導入時,因此名字都已經加載過

解決方案2:導入語句放到函數中,只有在調用函數時纔會執行其內部代碼

 

八、區分py文件的兩種用途

一種被當程序/腳本執行,一種被當模塊導入。區分方法:每一個py文件內置的__name__變量,該變量在py文件中當腳本執行時賦值爲__main__,當模塊導入時賦值爲模塊名。

if __name__ == '__main__':
    foo.py被當作腳本執行時運行的代碼
else:
    foo.py被當作模塊導入時運行的代碼
相關文章
相關標籤/搜索