我的詞典我做主!python3.5生成自己的詞性詞典

由於朋友需要做文本分析,前提是要將文本中的名詞和動詞剔除掉,但沒有現成的名詞和動詞的txt格式的詞典。於是找來了一個英漢詞典,根據每一行出現的adj、adv、n、prep等,使用正則表達式匹配需要的詞性,並將其追加寫入到txt文件中。

建議大家使用python3.5,3的優點是避免了很多編碼問題。3代表著python的未來,大家還是應該多多的對未來投資。

比如,我要生成形容詞的詞典。步驟:

1、應先使用正則表達式,匹配含有『adj』的行字元串,返回的是list。

2、獲得adj結尾處的索引值

3、對行字元串進行切片處理,獲得索引值後的全部字元

4、如果獲得的字元串有 『,』 那再用正則表達式,匹配中文字元,獲得的是中文的list

代碼實現如下:

import restrs = open(r"C:/Users/myl/Desktop/SegChineseToWords/英漢詞典TXT格式.txt","r",encoding="utf-8").readlines()for str in strs:# 形容詞典 adj_re = re.search("adj", str) if adj_re != None: adj_num = adj_re.end()+1 adj_str = str[adj_num:] adj_list = re.findall("[u4e00-u9fa5]+", adj_str) for ele_adj in adj_list: ele_adj = ele_adj + "
" with open(r"C:/Users/myl/Desktop/SegChineseToWords/Dict/adj_dict.txt", "a+",encoding="utf-8") as f: f.write(ele_adj)

實現的效果如下圖:

本代碼中用到 re模塊 的 research方法 ,具體大家去百度下,這個方法的相關知識。

現在附上 練習材料和最終代碼,大家可以比照著練習下正則。

pan.baidu.com/s/1dFyWQw

歡迎關注公眾號:大鄧帶你玩轉python

----------------------------------

作者:鄧旭東

博客專欄:鄧旭東HIT的博客專欄

歡迎關注 簡書賬號 鄧旭東HIT

知乎: 鄧旭東HIT

微信公眾號: 大鄧帶你玩轉python

大家也可以加小編微信:tszhihu (備註:Python),拉大家到 Python愛好者社區 微信群,可以跟鄧旭東、崔慶才等老師互相交流。謝謝

大家記得關注我,明天晚上 崔慶才老師教你玩 Python爬蟲知乎用戶信息,記得關注。內容:

1. 分析知乎Ajax請求及爬取邏輯

2. 用Scrapy實現遞歸爬取

3. 爬取結果存儲到MongoDB 報名地址:爬取知乎所有用戶詳細信息 。後面到 Live也弄幾場,感謝關注。


推薦閱讀:

萌新刷題(六)旋轉字元串
教你免費搭建個人博客,Hexo&Github
Python實現動態圖的解析、合成與倒放

TAG:Python | Python3x | Python开发 |