1. 程式人生 > >小學生都學Python了,你還不知道怎麼開始

小學生都學Python了,你還不知道怎麼開始

最近Python又火了一把,一是我大山東省小學六年級的教材中加入了Python的內容;二是從2018年起,Python也將成為浙江高考的內容之一;三是計算機二級考試加入了Python科目。

早先常常看到新聞,國外4-5歲的小孩開發APP,給MM開發遊戲之類的。可以看到,國外對小孩程式設計的教育還是比較早的,通常也會使用python來程式設計,因為它簡潔易用。亞馬遜上早早的就有了Python for kidsPython Bytes: An ABC Introduction to Programming for Toddlers系列面向小孩程式設計的叢書。.”,後面說”I think almost everyone

should learn to code in the same way that almost everyone should learn to read/write.” 不過在這個回答裡面,並沒看到ANdrew Ng說的自己小孩一旦會說話就要學程式設計。不過會加減運算應該就可以程式設計了。

Python是Guido van Rossum在1989年為了打發無聊的聖誕節 (假期少,也是我們缺少創造力的一個原因)時開始編寫的,到1991年第一個版本正式釋放,其設計正是順應了計算機的快速發展,希望能有更易於編寫的語言。名字來源於英國肥皂劇《Monty python and the Flying Circus》。標誌物是大蟒蛇,雖然有些嚇人,但也慢慢越來越可愛。而且因為這個名字還受到同名成人網站的混淆,導致其主頁會間斷性打不開。

2017年,也是Python排名又上一個新臺階的一年,在ranked.com的排名中,Python是2017年最受歡迎人工智慧程式語言(第二是C++)。根據Stack Overflow流量統計,2017年6月,Python第一次成為高收入國家Stack Overflow訪問量最大的標籤,照此發展,到了2018年,Python肯定會成為最受歡迎的標籤。在GitHub 2017年度報告中,Python超越Java成第二受歡迎語言。

這些排名,跟它強大的功能是分不開的。小到資料格式轉換,大到人工智慧,都有Python的一席之地。幾大公司, Google, NASA, Facebook, Yahoo, Youtube, Quora, Dropbox, BitTorrent等等都在大量使用。著名的包有:

  1. 科學計算 Numpy, SciPy (也是安裝python包的攔路虎直到有了conda
  2. 類比於R的資料框操作包 Pandas
  3. 視覺化工具 Seaborn (配合pandas), matplotlib (類比MATLAB), plotly (互動式繪圖), ggplot (類比ggplot2)
  4. 網站開發 web.py, Django, Flask
  5. 任務排程和流程管理 Airflow (pipeline首選)
  6. 機器學習 scikit-learn (經典), PyML, Tensorflow (谷歌釋放), pylearn2, Orange (圖形介面的機器學習包)
  7. 網頁抓取 Beautiful Souprequests,
  8. 可重複程式設計 Jupyter
  9. 正則表示式 re

簡潔的特性和豐富的包,既可以快速上手,又可以使用更多高階功能解決問題。所以,ANSI C++ Committee member Bruce Eckel說 Life is short (You need Python)

另外相傳:Guido van Rossum去谷歌面試,帶一份簡歷,上輸三個字I wrote Python,就不需要面試了。想不想也給自己的簡歷加點料呢。

如何學習程式設計

程式設計就像拼樂高,需要我們知道每個組分的特徵以便在需要時可以使用,也需要腦袋中有個藍圖知道每一步要做什麼,二者結合,就可以拼出你想要的世界。

第一步就是讀一本書,反覆多讀幾遍,後面提到的簡明Python教程就適合多讀幾遍,看的懂的記住,看不懂的多看幾遍,還看不懂的就忽略。然後就可以了。生信方面可以參考生信寶典出品的Python簡明教程,經過了培訓的檢測。

第二步就是做題,12個生信練習題,三個維度的訓練,作出來就會了。

如何快速學習程式設計

之前提到的教程是關於Python2.X系列的,到2020年Python社群全面轉向Python 3系列 (2和3的比較見後面資源列表的帖子)。在2018年即將到來之際,也沒什麼糾結的了,果斷選擇Python 3。之前的教程就不合適了,生信寶典聯合北大計算機系本科畢業後轉生信的中科院博士和301醫院臨床博士推出應用Python處理生物資訊資料和作圖培訓班,全面升級Python 3,定位於生信入門的程式設計基礎課。不管你有沒有基礎,都可以報名參加

培訓的意義在於幫你跨越從概念到行動這一步。基本的Python程式設計語法是瞭解樂高積木的每個元件,拼出什麼形狀是對生信問題的分析,銜接這兩段的是如何去實踐。初學者,最困難的是轉化想法為程式碼;進階後,最困難的是有更好的想法。這些我們都涵蓋,如何入門,如何體味Python的強大,如何特異地應用於生信分析。

相比於自己閱讀,培訓提供專業的人士指導、集中的學習氛圍,讓你遠離紛擾,靜下心來體會程式設計的樂趣。一旦集中精力邁進了這個門,以後任何環境、任何碎片時間都可以利用起來提高程式設計能力了。所以,長按二維碼塑造一個更好的自己吧。

資源列表