常用模組8 7

2022-09-11 21:45:30 字數 2577 閱讀 7151

什麼是模組?

1 使用python編寫的**(.py檔案)

2 已被編譯為共享庫或dll的c或c++擴充套件

3 包好一組模組的包

4 使用c編寫並鏈結到python直譯器的內建模組

為何要使用模組?

1.方便管理

2.重複利用

collections模組

在內建資料型別(dict、list、set、tuple)的基礎上,collections模組還提供了幾個額外的資料型別:counter、deque、defaultdict、namedtuple和ordereddict等。

1.namedtuple: 生成可以使用名字來訪問元素內容的tuple

>>> from collections import namedtuple

>>> point = namedtuple('point', ['x', 'y'])

>>> p = point(1, 2)

>>> p.x

1>>> p.y

2

2.deque: 雙端佇列,可以快速的從另外一側追加和推出物件

>>> from collections import deque

>>> q = deque(['a', 'b', 'c'])

>>> q

deque(['y', 'a', 'b', 'c', 'x'])

3.counter: 計數器,主要用來計數

c = counter('abcdeabcdabcaba')

print c

輸出:counter()

4.ordereddict: 有序字典

>>> from collections import ordereddict

>>> d = dict([('a', 1), ('b', 2), ('c', 3)])

>>> d # dict的key是無序的

>>> od = ordereddict([('a', 1), ('b', 2), ('c', 3)])

>>> od # ordereddict的key是有序的

ordereddict([('a', 1), ('b', 2), ('c', 3)])

注意:dict中的key是按照插入順序排序,而不是按照key本身排序

5.defaultdict: 帶有預設值的字典

有如下值集合 [11,22,33,44,55,66,77,88,99,90...],將所有大於66的值儲存至字典的第乙個key中,將小於66的值儲存至第二個key的值中。

即:

from collections import defaultdict

values = [11, 22, 33,44,55,66,77,88,99,90]

my_dict = defaultdict(list)

for value in values:

if value>66:

else:

時,如果引用的key不存在,就會丟擲keyerror。如果希望key不存在時,返回乙個預設值,就可以用defaultdict

>>> from collections import defaultdict

>>> dd = defaultdict(lambda: 'n/a')

>>> dd['key1'] = 'abc'

>>> dd['key1'] # key1存在

'abc'

>>> dd['key2'] # key2不存在,返回預設值

'n/a'

re模組

re模組和正規表示式的關係,類似於time模組跟時間的關係

正規表示式和python本身沒有關係,它是處理字串內容的一種規則。

官方定義:正規表示式是對字串操作的一種邏輯公式,就是用事先定義好的一些特定字元、及這些特定字元的組合,組成乙個「規則字串」,這個「規則字串」用來表達對字串的一種過濾邏輯。

常用匹配模式:

常用模組 re模組

由堆具有特殊意義的字元組成的式子。用於匹配查詢字串內容。主要學習重點,就是學習這些字元的含義。abc 表示式不包含任何特殊字元,就是精準匹配,說白了判斷是否相同 print re.findall abc abcbbb abc n t f 符號含義 a從字元的開始處開始匹配 z從字元的結尾處匹配 從字...

常用模組 xml模組

格式 也是一種通用的資料格式 之所以用它是因為塊平台性。一 任何的起始標籤都必須有 乙個結束標籤。二 可以採用另一種簡化語法,可以在乙個標籤中同時表示起始和結束標 籤。這種語法是在 於符號之前緊跟乙個斜線 xml 三 標籤必須按合適的順序進 行 巢狀,所以結束標籤必須按映象順序匹配 起始標籤。這好 ...

常用模組 pickle模組

import pickle name msj age 25height 184user 記憶體中資料 pickle模組是乙個用來序列化的模組。指的是將記憶體中的資料結構轉為一種中間格式,並儲存在硬碟上。將硬碟上儲存的中間格式檔案還原成記憶體中的資料結構。就是為了將資料永久儲存,之前學過檔案也能完成永...