模塊是一個包含所有你定義的函數和變量的文件,其後綴名是.py。模塊可以被別的程序引入,以使用該模塊中的函數等功能。這也是使用 python 標準庫的方法。從物理的角度來說,一個模塊就是一個.py文件,從邏輯的角度來說,就是模塊的命名空間。
模塊的好處:(1)在同一個模塊.py文件中一個名字不能同時出現,為了解決名字衝突的問題,所以建立不同的文件。(2)有利於項目按照功能分塊開展。(3)可以共享使用模塊。
二、模塊的導入1.import 模塊名1 [as 別名1],模塊名2 [as 別名2],... #當import導入模塊之後,被導入的代碼會從頭到尾被執行一次
模塊名.變量名/函數/... #使用導入後的內容
import random #導入random模塊
random.randint(1,100) #使用模塊中的randint()生成1-100的隨機數
2.from 模塊 import 名字1 [as 別名1],名字2[as 別名2],... #導入模塊中指定名字的部分,不全部導入模塊
#使用直接使用import後面的名字即可
from random import randint
randint(1,100)
3.別名可以不使用,但名字較長時我們使用別名時,原來的名字就不能用了
from random import randint as r
r(1,100)
三、模塊的搜索路徑目的:為了添加新模塊起名是不要與原有模塊名字相同導致衝突。
模塊的搜索路徑:當程序有import ... 的內容的時候,進行對模塊的加載
加載順序:內建解釋器中先加載 buildins.py ----腳本執行所在的模塊中加載----python的path環境變量路徑中加載----再到python的安裝路徑下加載。
四、__name__屬性一個模塊被另一個程序第一次引入時,其主程序將運行。如果我們想在模塊被引入時,模塊中的某一程序塊不執行,我們可以用__name__屬性來使該程序塊僅在該模塊自身運行時執行。
#!/usr/bin/python3
# Filename: using_name.py
if __name__ == '__main__':
print('程序自身在運行')
else:
print('我來自另一模塊')
說明: 每個模塊都有一個__name__屬性,當其值是'__main__'時,表明該模塊自身在運行,否則是被引入。
說明:__name__ 與 __main__ 底下是雙下劃線, _ _ 是這樣去掉中間的那個空格。
五、包在python中的包,就相當於是存放.py文件的文件夾一樣。
導入模塊的時候要指定包
其中,在包中_init_.py 代表當前的包是python的開發包,不是普通的文件夾。當有其他的模塊導入該包下的文件時,會自動的執行_init_.py的內容初始化包。
六、常用模塊#1.math模塊
import math
print(math.sqrt(4)) #開平方根
print(math.e)
print(math.pi)
#2.random 隨機數模塊
import random
print(random.random()) #[0,1)之間的隨機數
print(random.randint(0,10)) #[0,10]之間的隨機整數
random.seed(1) #種子 讓後面的隨機方法,每次運行時都產生相同的值
print(random.randrange(1,10,3)) #在[1,10)之間產生1,4,7的隨機數
#3.sample(li,n) 不放回抽取樣本,在random模塊下,li代表樣本源,n表示抽取幾個
import random
li = [1,-1,5,6,9,11,10]
print(random.sample(li,2)) #從li中不放回地隨機抽取2個數
相關推薦:python數據分析