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

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

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

 [[410332]]

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

背景

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

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

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

思路

總體思路是文件分詞統(tǒng)計(jì),查找字典,生成新字典。

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

得到的字典,就是這本書的專屬字典了。業(yè)余背這個(gè)字典,相當(dāng)于掌握了計(jì)算機(jī)專業(yè)英語。這個(gè)方法也適用于機(jī)械、電子等等任何專業(yè)英語的地方。

實(shí)現(xiàn)

下面,以 Python 神作《Fluent Python》為例,用 Python 自帶的庫實(shí)現(xiàn)分詞、統(tǒng)計(jì)功能。首先看下它的內(nèi)容梗概。 

  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) 

以上代碼中,導(dǎo)入了 Counter 和 re 模塊。

Counter 負(fù)責(zé)統(tǒng)計(jì)單詞詞頻,re 正則表達(dá)式分割英語單詞。得到結(jié)果 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())))  

現(xiàn)在,result_f1.txt 中存儲(chǔ)的是這本書出現(xiàn)的單詞,而且是按照詞頻排序的,如下。 

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

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

另外,比較有意思的數(shù)據(jù)是,《Fluent Python》共使用詞匯 9118 個(gè),其中出現(xiàn)一次的單詞有 3168 個(gè)。出現(xiàn)頻次最高的 the 達(dá)到 12000 次。它的分布圖如下。

載入字典

下載一個(gè)比較全的字典,十萬個(gè)單詞。載入內(nèi)存,存儲(chǔ)在字典數(shù)據(jù)變量 dicts 中。

這是 dict 結(jié)構(gòu)第一次真正存儲(chǔ)字典! 

  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}) 

刪除認(rèn)識(shí)的單詞

字典當(dāng)中大量的 the a is,相當(dāng)挑戰(zhàn)我們的容忍度,這讓旁人看了,還以為我們小學(xué)沒畢業(yè)呢。去掉去掉……

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

postgrade.txt 同學(xué)們肯定耳熟能詳。神奇的是第一個(gè)單詞。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 

現(xiàn)在,字典 dicts 中,僅僅剩下所我們不認(rèn)識(shí)的,103976 - 5000 = 98976 個(gè)單詞了。

生成新字典

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

  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() 

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

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

總結(jié)

除此處介紹的生生單個(gè)文檔字典外,還可多拿幾個(gè)領(lǐng)域?qū)I(yè)文檔,提取它們的常用單詞,然后生成專屬字典,這字典,相當(dāng)于相關(guān)領(lǐng)域的專業(yè)英語字典。

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

 

責(zé)任編輯:龐桂玉 來源: Python中文社區(qū)
相關(guān)推薦

2021-07-08 22:55:39

Python單詞統(tǒng)計(jì)

2019-09-10 15:18:44

云計(jì)算

2014-02-14 09:17:37

雅虎云計(jì)算服務(wù)基準(zhǔn)YCSB

2019-07-11 05:53:48

MySQL死鎖數(shù)據(jù)

2019-06-24 09:10:31

Windows操作系統(tǒng)Windows 10

2025-02-28 08:21:36

C語言C++Java

2011-09-06 11:20:37

2021-04-01 06:21:08

人工智能AI

2023-08-14 07:49:42

AI訓(xùn)練

2020-11-20 07:05:26

微信騰訊移動(dòng)應(yīng)用

2017-01-03 09:20:11

Windows 10技能安裝

2024-09-09 15:06:32

2025-06-12 10:25:13

Android 16通知欄進(jìn)度條

2018-11-29 11:28:32

數(shù)據(jù)中心IT云計(jì)算

2018-08-30 15:36:11

NVIDIA GFE8K技能

2012-02-21 10:10:04

2022-07-25 11:33:48

Python大文件

2020-12-03 14:49:13

AI 技術(shù) 人工智能

2020-12-16 15:53:59

開發(fā)編程語言技術(shù)

2016-12-26 20:17:17

數(shù)據(jù)excel表效率
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 91精品国产综合久久久久久丝袜 | 欧美日韩在线一区二区 | 国产www.| 中文字幕不卡在线88 | 日本人麻豆 | 中文字幕一区二区三区四区 | www.久久久.com | 亚洲狠狠爱 | 国产精品一区二区欧美 | 中文字幕一区在线观看视频 | 精品久久久久久 | 久久草在线视频 | 国产精品1区2区 | 国产成人亚洲精品 | 精品欧美一区二区中文字幕视频 | 亚洲视频免费在线观看 | 日韩中文字幕免费在线 | 国产日韩欧美一区 | 久久99精品久久久97夜夜嗨 | www.精品一区| 亚洲成人在线免费 | 亚洲精品一二区 | 国产精品久久久久久久久久久久 | 美女网站视频免费黄 | 天堂成人国产精品一区 | 给我免费的视频在线观看 | 国外成人在线视频 | 中文字幕在线观看日韩 | 日本在线小视频 | 久久久久一区二区三区 | 国产精品高清一区二区 | 黄色在线观看网址 | 一区二区三区在线电影 | 91视频电影| 国产精品美女一区二区三区 | 亚洲欧美视频一区 | 亚洲精品片 | 欧美8一10sex性hd| 国产视频不卡一区 | 日本不卡免费新一二三区 | 一级毛片视频在线观看 |