python制作词典_我的词典我做主!python3.5生成自己的词性词典
由于朋友需要做文本分析,前提是要將文本中的名詞和動(dòng)詞剔除掉,但沒(méi)有現(xiàn)成的名詞和動(dòng)詞的txt格式的詞典。于是找來(lái)了一個(gè)英漢詞典,根據(jù)每一行出現(xiàn)的adj、adv、n、prep等,使用正則表達(dá)式匹配需要的詞性,并將其追加寫入到txt文件中。
建議大家使用python3.5,3的優(yōu)點(diǎn)是避免了很多編碼問(wèn)題。3代表著python的未來(lái),大家還是應(yīng)該多多的對(duì)未來(lái)投資。
比如,我要生成形容詞的詞典。步驟:
1、應(yīng)先使用正則表達(dá)式,匹配含有‘a(chǎn)dj’的行字符串,返回的是list。
2、獲得adj結(jié)尾處的索引值
3、對(duì)行字符串進(jìn)行切片處理,獲得索引值后的全部字符
4、如果獲得的字符串有 ‘,’ 那再用正則表達(dá)式,匹配中文字符,獲得的是中文的list
代碼實(shí)現(xiàn)如下:
import re
strs = 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 + '\n'
with open(r'C:/Users/myl/Desktop/SegChineseToWords/Dict/adj_dict.txt', 'a+',encoding='utf-8') as f:
f.write(ele_adj)
實(shí)現(xiàn)的效果如下圖:
本代碼中用到 re模塊 的 research方法 ,具體大家去百度下,這個(gè)方法的相關(guān)知識(shí)。
現(xiàn)在附上 練習(xí)材料和最終代碼,大家可以比照著練習(xí)下正則。
歡迎關(guān)注公眾號(hào):大鄧帶你玩轉(zhuǎn)python
----------------------------------作者:鄧旭東
歡迎關(guān)注 簡(jiǎn)書賬號(hào) 鄧旭東HIT
知乎: 鄧旭東HIT
微信公眾號(hào): 大鄧帶你玩轉(zhuǎn)python
大家也可以加小編微信:tszhihu (備注:Python),拉大家到 Python愛(ài)好者社區(qū) 微信群,可以跟鄧旭東、崔慶才等老師互相交流。謝謝
大家記得關(guān)注我,明天晚上 崔慶才老師教你玩 Python爬蟲知乎用戶信息,記得關(guān)注。內(nèi)容:
1. 分析知乎Ajax請(qǐng)求及爬取邏輯
2. 用Scrapy實(shí)現(xiàn)遞歸爬取
3. 爬取結(jié)果存儲(chǔ)到MongoDB 報(bào)名地址:爬取知乎所有用戶詳細(xì)信息 。后面到 Live也弄幾場(chǎng),感謝關(guān)注。
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的python制作词典_我的词典我做主!python3.5生成自己的词性词典的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: dnf绝望之塔中装备武器强5,进入是怎么
- 下一篇: 递归函数python有什么特点_Pyth