咱們用程序整理出了一份Python英語高頻詞彙表,拿走不謝!

有很多編程初學者會問這樣一個問題:我英語很差,還能不能學編程?會不會有影響? php

個人回答是:能,會。python

能學,是由於雖然編程用的都是英語,但翻來覆去就那麼一些關鍵字,寫一陣子就都記住了。中文的學習資料也很多,足夠學會。django

但確定會有影響,主要有幾點:編程

  1. 看不懂報錯信息
  2. 看不懂官方文檔,只能看別人翻譯的二手貨。翻譯版本不能準確傳達意思不說,不少前沿技術的版本更新速度也比翻譯的速度快多了。你看 Django 就歷來沒有一箇中文版本能跟上的。
  3. 看不懂 StackOverflow 上的問答
  4. 沒法使用參與 Github 上的項目
  5. 無法好好用 Google(固然這不只是英語問題)

總結下來就是:能夠學,但會吃力,尤爲在更進一步提高時會有限制。而若是英語好,則事半功倍。json

而英語自己的做用也不單單是對編程幫助。多花點時間學英語,哪怕僅僅多背一些單詞也是有用的。工具

因而,爲了讓編程小白+英語苦手在開始時能有些方向,咱們嘗試用程序整理了一份Python 高頻詞彙表,供參考。學習

網頁演示地址: Crossin的編程教室-Python必背單詞整理
扇貝單詞本(可導入你的扇貝單詞使用)和項目完整 代碼及說明 文檔、單詞列表,請在公衆號( Crossin的編程教室)回覆 背單詞,獲取地址。

【關於這份詞彙表的說明】網站

內容來源包括url

  • 《Head First Python》、《Learn Python The Hard Way》、《Python for Data Analysis》等20多本Python書籍;
  • Python 官方文檔、pandas、requests、django 等10份文檔;
  • Github awesome-python 項目下近400個項目的 readme 說明;
  • stackoverflow 下 Python 及經常使用庫的問答 topics 400+ 回答等資源。

經過程序從中採集了詞頻最高的單詞,再加上人工篩選,最終整理出近 2000 個單詞。spa

須要指出的是,單詞的中文釋義咱們使用了金山的翻譯接口。但某些詞彙在計算機和編程領域有特殊的含義,翻譯接口未必可以給出,因此會存在必定的問題。對此,咱們在自建的網頁版工具上提供了「用戶自定義解釋」的接口,供你們修正和補充解釋。若是遇到解釋不到位的單詞,歡迎各位提交補充。(但扇貝上已提交的單詞本暫沒法修改釋義)

【程序的實現方法

1. 文檔抓取

4 個不一樣渠道來源,經過 requests + BeautifulSoup 實現。

2. 詞頻統計

用到了以前提過的 Counter 類。可參考 【編程課堂】計數器 Counter

import re
from collections import Counter
# 打開文件,讀取數據
with open(filename, 'r', encoding='utf-8') as f:
    raw_words = f.read()
# 正則匹配全部單詞
words = re.findall('[a-z]+', raw_words.lower())
# 統計單詞
c = Counter(words)
# 提取出前詞頻前 100 的單詞
c.most_common(100)
複製代碼

3. 翻譯接口

使用了金山的API

import requests
# 請求API
url = 'http://www.iciba.com/index.php?a=getWordMean&c=search&word=' + word
req = requests.get(url)
# 處理返回的JSON數據
info = req.json()
data = info['baesInfo']['symbols'][0]
means = data['parts'][0]['means']
複製代碼

4. 網站展現

網站基於 django 搭建。數據的導入使用了 peewee 庫,直接與 django 的 ORM 對接。

網頁演示地址:Crossin的編程教室-Python必背單詞整理

完整的代碼和更詳細說明可在 Github 的項目中查看。
在公衆號回覆 背單詞,可獲取扇貝單詞本地址和項目完整代碼、單詞表及說明文檔。


════
其餘文章及回答:

如何自學Python | 新手引導 | 精選Python問答

歡迎關注:Crossin的編程教室

相關文章
相關標籤/搜索