幾個python簡單模塊

queue模塊

這個模塊在python2.x中是import Queue,注意Q是大寫,而到了Python3.x則變成了import queue.
一般用在多線程共享下,防止多線程共享時數據結構出錯。

import queue
q = queue.Queue()
# 向隊列裏存數據
q.put(1)
q.put('a')
q.put('b')
# 從隊列中取出數據,注意取出的順序
q.get()
1
q.get()
'a'
q.get()
'b'
# 如果當前序列爲空,程序會停住等待,添加參數timeout=1,意味着如果1秒內沒有數據就會拋出一個異常Empty
q.get(timeout=1)
---------------------------------------------------------------------------

Empty                                     Traceback (most recent call last)

<ipython-input-8-8e2a1178484a> in <module>()
      1 # 如果當前序列爲空,程序會停住等待,添加參數timeout=1,意味着如果1秒內沒有數據就會拋出一個異常Empty
----> 2 q.get(timeout=1)


D:\Anaconda3\lib\queue.py in get(self, block, timeout)
    170                     remaining = endtime - time()
    171                     if remaining <= 0.0:
--> 172                         raise Empty
    173                     self.not_empty.wait(remaining)
    174             item = self._get()


Empty: 

sys模塊

sys模塊用於處理和系統相關的事情

import sys
# 當前運行環境
sys.argv
#退出python程序
sys.exit(0)
['D:\\Anaconda3\\lib\\site-packages\\ipykernel_launcher.py',
 '-f',
 'C:\\Users\\Simon\\AppData\\Roaming\\jupyter\\runtime\\kernel-e54c089f-9df4-49d7-bf6f-898a13f949ff.json']

os模塊

操作系統相關模塊

import os
# 當前工作目錄
os.getcwd()
'C:\\Users\\Simon\\work'

time模塊

時間相關

import time
#某段代碼運行的時間
start = time.time()
for i in range(999):
    for j in range(999):
        pass
end = time.time()
process_time = end - start
print(process_time)
0.04385638236999512
# 暫時中斷程序
time.sleep(3) #暫停3秒

datetime模塊

處理日期相關

import datetime

#創建日期,只能輸入年、月、日,不能輸入分鐘,秒
d = datetime.date(2019,1,1)
print(d)

#今天
today = datetime.datetime.today()
print(today)
2019-01-01
2019-05-16 11:24:21.137536

collections模塊

定義了一些數據集合類,例如OrderedDictdefaultdict

import collections

#普通的字典沒有順序
d = {}
d['a'] = 1
d['f'] = 0
d['e'] = 4
d['b'] = 2
d['c'] = 3
#如果要字典按照key值排序
sorted(d)
# 輸出:['a', 'b', 'c', 'e', 'f']

#如果要字典按照value值排序
sorted(d.items(), key=lambda x:x[1])
#輸出:[('f', 0), ('a', 1), ('b', 2), ('c', 3), ('e', 4)]

#OrderedDict,顧名思義有序字典
d1 = collections.OrderedDict()
d1['a'] = 1
d1['b'] = 2

#defaultdict,當選取的key值不存在時,返回一個空列表
d2 = collections.defaultdict(list)
d2['a']
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章