1. 程式人生 > >新學了幾個python模組,不是很雞肋。

新學了幾個python模組,不是很雞肋。

先說一個模組分類(基本上所有模組都是小寫開頭,雖然規範的寫法是變數的命名規範,但是,都是這樣寫的)

1,C編寫並鑲嵌到python直譯器中的內建模組

2,包好的一組模組的包

3.已經被編譯好的共享庫,或者是DLL的C或者是C++擴充套件

4,自己用python寫好的程式碼

用模組就是為了能重用程式碼,就是為了功能更加強大,更加的快.

collection模組
注意了,這個collection
這個模組提供出了幾種新的資料型別
namedtuple : 生成可以使用名字來訪問元素內容的tuple
deque:雙端佇列,可以快速的從另外一側追加或者推出物件
Counter:計數器,主要用於計數
OrderedDict:有序字典
defaultdict:帶有預設值的字典

from collection import nametuple
point = namedtuple("point",["x","y"])
p=point(1,2)
print(p.x)#通過類與屬性的建立連線


deque
用list存資料的時候,按照索引訪問元素很快,但是要刪除或者插入元素很慢,就是因為list是線性的儲存,當資料量大的時候
改一個位置,就會影響別的位置。
所以就有了更加高效的刪除和插入更加方便的雙向列表,適合於佇列和棧
from collections import deque #匯入包中模組
q = deque(["a","b","c"]) #例項化一個雙向列表物件
q.append("x") #預設是從右端加入
q.appendleft("y")
print(q)
>>deque(["y","a","b","c","x"])
刪除或者新增都是特別的方便的appendleft(),還有 popleft().從頭或者是從尾部新增刪除都特別的方便的

OrderedDict
使用dict時候,Key都是無序的。在dict做迭代的時候,就沒有辦法了
這個OrderedDict就是保持有序的的Key

from collections import OrderedDict
d = dict([("a",1),("c",3),("b",2)])
這裡的key是無序的
od = OrderedDict([("a",1),("b",2),("c",3)])
print(od)
OrderedDict的key是有序的

defaultdict

counter


 

時間模組

常用方法:
time.sleep(secs)  (執行緒)推遲指定的時間執行,按秒計算時間 time.time()獲取時間戳 三種時間型別:格式化時間字串,結構化時間,時間戳 時間字串: time.strftime(%Y-%m-%d %X)