1. 程式人生 > 實用技巧 >python——模組介紹

python——模組介紹

一、什麼是模組

模組就是一系列功能的集合體

二、模組四種通用的類別

1、 一個python檔案就是一個模組,檔名為test.py,模組名為:test
2、盛放有多個py檔案的資料夾也是一個功能的集合體,也就是一種模組,相當於一種超級模組,稱之為:包
3、已被編譯為共享庫或DLL的C或C++擴充套件
4、使用C編寫並連結到python直譯器的內建模組

三、模組三種來源

1、自帶的模組: 內建模組、標準庫
print(type(print))
2、第三方模組
pip3 install requests

import time
print(type(time))
3、自定義的模組: 一個python檔案就是一個模組,檔名為test.py,模組名為:test

四、為何要用模組

1、內建以及第三方模組: 拿來主義,提升效率
2、自定義模組:可以將程式的各個部分功能提取出來 放到一個模組中 供大家使用
好處是:減少程式碼冗餘,程式組織結構更加清晰

五、如何用模組

1、首次匯入模組會發生3件事

1、執行spam.py
2、產生spam.py的名稱空間,將spam.py執行過程中產生的名字都丟到spam的名稱空間中
3、在當前檔案中產生一個名字spam,該名字指向2中產生的名稱空間
print('from the spam.py')

money = 1000
def read1():
    print('spam模組', money)
def read2():
    print('spam模組')
def change():
    global  money           # global修改全域性變數
    money=0

2、使用模組之import

#模組可以包含可執行的語句和函式的定義,這些語句的目的是初始化模組,它們只在模組名第一次遇到匯入import語句時才執行(import語句是可以在程式中的任意位置使用的,且針對同一個模組很import多次,為了防止你重複匯入,python的優化手段是:第一次匯入後就將模組名載入到記憶體了,後續的import語句僅是對已經載入到記憶體中的模組物件增加了一次引用,不會重新執行模組內的語句),如下 

#test.py
import spam #只在第一次匯入時才執行spam.py內程式碼,此處的顯式效果是隻列印一次'from the spam.py',當然其他的頂級程式碼也都被執行了,只不過沒有顯示效果.
import spam
import spam
import spam

'''
執行結果:
from the spam.py
'''

3、被匯入的模組有獨立的名稱空間

測試一:money與spam.money不衝突
#test.py
import spam 
money=10
print(spam.money)

'''
執行結果:
from the spam.py
1000
'''
測試二:read1與spam.read1不衝突
#test.py
import spam
def read1():
    print('========')
spam.read1()

'''
執行結果:
from the spam.py
spam模組 1000
'''
測試三:執行spam.change()操作的全域性變數money仍然是spam中的
#test.py
import spam
money=1
spam.change()
print(money)

'''
執行結果:
from the spam.py
1
'''