day 21 模組 ( 腎入!!!) 高能
一 . 初識模組:模組的就是我們把特有功能的程式碼進行歸類的結果,從程式碼編寫的單位來看我們的程式,從小到大的順序:
一條程式碼 < 語句塊 < 程式碼塊(函式,類)< 模組 ,我們寫的py檔案就是模組,比模組大的就是包。
import 模組 from XXX import 模組 (一般在最開始寫入)
二 . collections模組
1.Counter ,是一個計數器,用來計數 ,print( Counter ( s ) )
2. 棧 :先進後出, 佇列: 先進先出 ,需要先了解這兩類資料結構才能知道雙向佇列
deque 雙向佇列 q = queue( ) 如果列表中沒有元素了,繼續獲取就會阻塞
3. namedtuple 命名元祖
4. orderdict : 是有序的
defaultdict :可以給字典設定預設值,當key不存在時,直接獲取預設值:
三 . time 時間模組 (重點!!! 以後使用頻率最高的)
(1) t = time.localtime(1888888888) # 結構化時間
s = time.strftime("%Y-%m-%d %H:%M:%S", t) # 格式化這個時間
print(s)
時間戳 ——python的結構化時間——格式化時間
(2) s = "2020-10-01 12:18:12"
t = time.strptime(s, "%Y-%m-%d %H:%M:%S") # 轉化成結構時間
print(time.mktime(t)) # 轉換成時間戳
格式化時間——pthon的結構化時間——時間戳
總的來說,格式化時間與時間戳的相互轉換,都會通過python的結構化時間來進行轉換!這兩段程式碼必須要記住。
(3) 計算時間差 :
s1 = '2018-11-14 12:00:00'
s2 = '2018-11-14 14:00:00'
t = time.strptime(s1,"%Y-%m-%d %H:%M:%S")
print(t)
t2 = time.strptime(s2,"%Y-%m-%d %H:%M:%S")
print(t)
true_time = time.mktime(t)
now_time = time.mktime(t2)
dif_time = now_time - true_time
print(dif_time)
tt = time.gmtime(dif_time)
print(tt)
print('過去了%d時%d分鐘%d秒'%(tt.tm_hour,tt.tm_min,tt.tm_sec))
四.random 模組 :關於隨機的內容 小鼠,奇數
五.os 模組 :所有和作業系統相關的內容都在os模組 :
os .sep 檔案路徑分隔符,win下為“\\",linux下為”/“。
六. sys模組 :所有和python直譯器相關的都在sys模組:
sys.path python找模組的路徑,返回模組的搜尋路徑,初始化時使用PYTHONPATH環境變數的值。