語言處理與Python 4 2序列

2022-08-03 09:06:11 字數 1779 閱讀 7282

我們應該知道,我們常用的有三種序列。他們分別是:字串、鍊錶、還有一種為元組。

>>>t ='

walk

', '

fem', 3

>>>

t (

'walk

', '

fem', 3

) >>>

t[0]

'walk

' >>>t[1

:] (

'fem

', 3

) >>len(t)

序列型別上的操作遍歷操作:

zip函式

>>>words= ['

i', '

turned

', '

off', '

the', '

spectroroute']

>>>tags = ['

noun

', '

verb

', '

prep

', '

det', '

noun']

>>>

zip(words, tags)[('

i', '

noun

'), ('

turned

', '

verb

'), ('

off', '

prep'),

('the', '

det'), ('

spectroroute

', '

noun')]

>>>

list(enumerate(words))

[(0, 'i

'), (1, '

turned

'), (2, '

off'), (3, '

the'), (4, '

spectroroute

')]

合成不同型別的序列

>>>words= '

i turned offthe spectroroute

'.split()

>>>wordlens= [(len(word), word)for

wordin words]

137>>>wordlens.sort()

>>>'

'.join(w for (_, w)in

wordlens)④

'i offthe turned spectroroute

'

產生器表示式

>>>max([w.lower()for

win nltk.word_tokenize(text)])

'word

' >>>max(w.lower()for

win nltk.word_tokenize(text))

'word

注意觀察這兩種,雖然結果和作用是一樣的。但是還是有所不同:

1、在第乙個方法當中,鍊錶物件的儲存空間必須在max()的值被計算之前分配。如果文字非常大大,這將會非常慢。

2、第二個方法中,資料流像呼叫它的函式。由於呼叫的函式只是簡單的要找最大值,按字典順序排在最後的詞,它可以處理資料流,而無需儲存迄今為止的最大值以外的任何值。

Python基礎03 序列

資料型別 sequence 序列 1.sequence 序列 是一組有順序的元素的集合 嚴格的說,是物件的集合,但鑑於我們還沒有引入 物件 概念,暫時說元素 序列可以包含乙個或多個元素,也可以是乙個沒有任何元素的空序列 元素可以是我們之前所說的基本資料型別,可以是另乙個序列,還可以是我們以後介紹的其...

Python基礎03 序列

謝謝thunder424糾錯 sequence 序列 是一組有順序的元素的集合 嚴格的說,是物件的集合,但鑑於我們還沒有引入 物件 概念,暫時說元素 序列可以包含乙個或多個元素,也可以沒有任何元素。我們之前所說的基本資料型別,都可以作為序列的元素。元素還可以是另乙個序列,以及我們以後要介紹的其他物件...

Python基礎03 序列

謝謝thunder424糾錯 sequence 序列 是一組有順序的元素的集合 嚴格的說,是物件的集合,但鑑於我們還沒有引入 物件 概念,暫時說元素 序列可以包含乙個或多個元素,也可以沒有任何元素。我們之前所說的基本資料型別,都可以作為序列的元素。元素還可以是另乙個序列,以及我們以後要介紹的其他物件...