1. 程式人生 > >Python切分文字(將文字文件切分為詞列表)

Python切分文字(將文字文件切分為詞列表)

對於一個句子,一種簡單的方法是使用split()

a = 'This is an apple. Do you like apple?'
b = a.split()
print(b) # ['This', 'is', 'an', 'apple.', 'Do', 'you', 'like', 'apple?']

可以看到切分結果不錯,但標點符號也當成了詞的一部分,可以使用正則表示式來切分句子,其中分隔符是除字母,數字外的任意字串。

import re

a = 'This is an apple. Do you like apple?'
b = re.split(r'\W+', a)
print(b) # ['This', 'is', 'an', 'apple', 'Do', 'you', 'like', 'apple', '']

得到的詞列表已不包含符號,但是含有空字串,同時單詞也混有大小寫,將其改進得到

import re

a = 'This is an apple. Do you like apple?'
b = re.split(r'\W+', a)
c = [word.lower() for word in b if len(word) > 0]
print(c) # ['this', 'is', 'an', 'apple', 'do', 'you', 'like', 'apple']