成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

新技能get!用Python高效背單詞

開發 后端
這里介紹一個針對專業文檔背單詞的方法:把當前文檔的所有單詞,建立一個專屬字典,先背誦這個字典,再去看書,一定能一目十行。

 [[410332]]

Python中文社區(ID:python-china)

背景

作為一個程序員,經常需要閱讀英文論文、文檔、書籍。對于一些基礎不好的同學來說,最主要的攔路虎是英語單詞。計算機類文檔不同于小說,其語法、句式都比較簡單,可以說只要詞匯量有了,閱讀就很簡單。

如果能在平時提高詞匯量,那是最好不過了。雞湯警告!你必須暗自努力,然后驚艷所有人!這句話打在這里沒毛病吧,老鐵。但無所側重地背普通英語字典,恐怕效率并不高。不提前學習單詞,直接上手閱讀,遇到生詞再查,效率也提升不起來。

這里介紹一個針對專業文檔背單詞的方法:把當前文檔的所有單詞,建立一個專屬字典,先背誦這個字典,再去看書,一定能一目十行。

思路

總體思路是文件分詞統計,查找字典,生成新字典。

•首先,有一個需要閱讀的英文文檔,給它分詞,按照單詞頻率排序;•找一個已掌握的英語詞匯表(四六級或考研等),把上文中的單詞和本詞匯表重復的項刪除;•再找一個詞匯量大的字典,在其中查找對應解釋;•把結果存儲到一個字典文件中。

得到的字典,就是這本書的專屬字典了。業余背這個字典,相當于掌握了計算機專業英語。這個方法也適用于機械、電子等等任何專業英語的地方。

實現

下面,以 Python 神作《Fluent Python》為例,用 Python 自帶的庫實現分詞、統計功能。首先看下它的內容梗概。 

  1. Fluent Python   
  2. CLEAR, CONCISE, AND EFFECTIVE PROGRAMMING  
  3. Luciano Ramalho 
  4. ...... 

分詞

首先來分詞。 

  1. from collections import Counter  
  2. import re  
  3. ct2 = Counter()  
  4. patt = re.compile(r'\w+')  
  5. with open('f1.txt','r',encoding='utf-8') as f:  
  6.     for l in f.readlines():  
  7.         ws = (n.lower() for n in patt.findall(l))  
  8.         ct2.update(ws) 

以上代碼中,導入了 Counter 和 re 模塊。

Counter 負責統計單詞詞頻,re 正則表達式分割英語單詞。得到結果 ct2 中是所有單詞的詞頻。

下面,把它保存下來。 

  1. with open('result_f1.txt','w',encoding='utf-8') as f:  
  2.     f.write(''.join(('%s %s\n'%(a,b) for a,b in ct2.most_common())))  

現在,result_f1.txt 中存儲的是這本書出現的單詞,而且是按照詞頻排序的,如下。 

  1. the 12414  
  2. a 5639  
  3. of 4900  
  4. in 4837  
  5. to 4689  
  6. is 3848  
  7. ...... 

和預想得很像,排名靠前的基本是介詞等常用詞。

另外,比較有意思的數據是,《Fluent Python》共使用詞匯 9118 個,其中出現一次的單詞有 3168 個。出現頻次最高的 the 達到 12000 次。它的分布圖如下。

載入字典

下載一個比較全的字典,十萬個單詞。載入內存,存儲在字典數據變量 dicts 中。

這是 dict 結構第一次真正存儲字典! 

  1. dictdicts = dict()  
  2. with open('103976.txt','r',encoding='gbk') as f:  
  3.     for l in f.readlines():  
  4.         k = l[0:l.find('\t')]  
  5.         v = l[l.find('\t')+1:]  
  6.         dicts.update({k:v}) 

刪除認識的單詞

字典當中大量的 the a is,相當挑戰我們的容忍度,這讓旁人看了,還以為我們小學沒畢業呢。去掉去掉……

眾所周知,我們采用了小學二年級就掌握的 postgrade.txt 英文字典。

postgrade.txt 同學們肯定耳熟能詳。神奇的是第一個單詞。abandon vt.離棄,丟棄;遺棄,拋棄;放棄 

  1. with open('postgrade.txt','r',encoding='utf-8') as f:  
  2.     f.readline()  
  3.     for l in f.readlines():  
  4.         k = l[:l.find(' ')]  
  5.         try:  
  6.             del dicts[k]  
  7.         except KeyError as e:  
  8.             pass 

現在,字典 dicts 中,僅僅剩下所我們不認識的,103976 - 5000 = 98976 個單詞了。

生成新字典

以詞頻單詞來查找單詞表,再把單詞和釋義存到新單詞表中,就得到新單詞表了。 

  1. with open('f1_res.txt','w',encoding='utf-8') as wf,open('result_f1.txt','r',encoding='utf-8')as f:  
  2.     for l in f.readlines():  
  3.         k = l[:l.find(' ')]  
  4.         v = dicts.get(k,None)  
  5.         if v:  
  6.             wf.write('%s %s'%(k,v))  
  7. wf.close() 

這里第一句,兩個 with 可以寫到一句話里。這樣代碼看起來比較和諧。

查字典方法,使用v = dicts.get(k,None),這樣查不著的單詞,返回 None,寫入新字典時判斷這個值,就可以了。

總結

除此處介紹的生生單個文檔字典外,還可多拿幾個領域專業文檔,提取它們的常用單詞,然后生成專屬字典,這字典,相當于相關領域的專業英語字典。

這里使用 Python 自帶庫寫程序,效率可能不高。如果需要,可以使用 pandas 之類的庫來實現,提高效率。 

 

責任編輯:龐桂玉 來源: Python中文社區
相關推薦

2021-07-08 22:55:39

Python單詞統計

2019-09-10 15:18:44

云計算

2014-02-14 09:17:37

雅虎云計算服務基準YCSB

2019-07-11 05:53:48

MySQL死鎖數據

2019-06-24 09:10:31

Windows操作系統Windows 10

2025-02-28 08:21:36

C語言C++Java

2011-09-06 11:20:37

2023-08-14 07:49:42

AI訓練

2021-04-01 06:21:08

人工智能AI

2020-11-20 07:05:26

微信騰訊移動應用

2024-09-09 15:06:32

2017-01-03 09:20:11

Windows 10技能安裝

2018-11-29 11:28:32

數據中心IT云計算

2018-08-30 15:36:11

NVIDIA GFE8K技能

2012-02-21 10:10:04

2025-06-12 10:25:13

Android 16通知欄進度條

2022-07-25 11:33:48

Python大文件

2020-12-03 14:49:13

AI 技術 人工智能

2020-12-16 15:53:59

開發編程語言技術

2016-12-26 20:17:17

數據excel表效率
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩精品成人一区二区三区视频 | www.se91| 亚洲伦理自拍 | 亚洲精品性视频 | 亚洲国产在 | 亚洲经典一区 | 成人不卡 | 午夜视频大全 | 日韩在线播放第一页 | 男女视频在线观看免费 | 国产在线一区观看 | 国产精品一区二区不卡 | 成年精品 | 91在线观看免费 | 日韩亚洲视频 | 久久久91精品国产一区二区三区 | 国产91在线播放 | 国产精品久久久久久久久久免费看 | 性一交一乱一透一a级 | 国产精品av久久久久久毛片 | 亚洲精品电影在线 | 国产一区二区三区四区 | 亚洲美乳中文字幕 | 国产精品一区二区三区在线 | 日本特黄a级高清免费大片 特黄色一级毛片 | 精品国产成人 | 亚洲天堂中文字幕 | 一区二区中文字幕 | 中文字幕国产 | 亚洲欧美在线观看 | 91在线视频免费观看 | 免费看一区二区三区 | 亚洲国产精品91 | 久久综合一区二区三区 | 成人在线网 | 久久久久免费精品国产 | 在线观看a视频 | 欧美视频成人 | 91视频久久 | 欧美一区视频 | 在线免费视频一区 |