想學好編程,就是要多思考,多敲代碼!用「 練級」 的方式來學習編程會更有意思,能為我們學習編程提升動力和自豪感。
這些工具就是為了讓大家儘可能地去敲更多的代碼,解決一些編程問題,效果好不好是因人而異的,怎麼能讓自己進步就怎麼學!以下的網站不限於練習 Python ,想練習別的語言也是可以的,大家有時間就敲起來吧!
The Python Challengewww.pythonchallenge.com
這個網站的頁面設計雖然不好看,但是裡面的謎題設計得很出色,上面有 33 道 Python 謎題,闖關需要有一定的基礎。在這個過程中,可能會讓你上頭,也可能會讓你自閉,下面這張圖是這個網站第 1 關的題目(第 0 關就不算了),應該是「 凱撒加密」,解決這個問題之前,每個人都要三思!
CodingBat Pythoncodingbat.com
免費的在線編程站點,在上面可以集中精力進行編碼,可以選擇 Java 和 Python,短時間內就可以做很多的挑戰,作者希望大家在學習編程的過程中,把更多的精力放在「大的編程問題」上,專注更深層次的知識,而不是都花在一些列表操作、循環等一些小的邏輯問題上。
Checkio - coding gamepy.checkio.org
這個網站就真的是一個練級遊戲,題目都分布在一個地圖上,提交完答案之後可以獲得積分,需要積滿分數,才能解鎖下一個島的編程題。通過挑戰之後,也可以查看別人的方案。
https://edabit.com/edabit.com
這個網站上面,也可以練習各種程式語言,可以選擇難度等級。
http://www.pyschools.com/www.pyschools.com
在這個網站可以練習 Python 的基礎語法知識,包括 變量和數據類型、函數、類和對象等。
https://www.codewars.comwww.codewars.com
來接受編程的挑戰吧!卡塔挑戰,這上面不僅僅可以練習 python 還可以練習很多其他的程式語言,完成挑戰可以提高排名,這個網站的難度稍微高一點,難度等級有 8 個,從簡單到困難 8 kyu ~ 1 kyu ,看評價有人覺得 8 kyu 已經很難。
HackerRankwww.hackerrank.com
這個網站上提供的挑戰練習集中數學、算法、和 AI 等,當然也是可以練習 Python 的,可以直接在線解決所有這些挑戰,有排行榜,也可以討論。
[ Coding Game ]
Coding Games and Programming Challenges to Code Betterwww.codingame.com
在玩遊戲的同時,提升編程能力,這個網站也可以選擇多種語言,通過敲代碼來消滅敵人,它的界面設計就像真的在玩遊戲一樣。
題庫 - 力扣 (LeetCode)leetcode-cn.com
會算法對一個編程人員來說,有多大的優勢就不用多說了,LeetCode 是一個做算法題的網站,有多種語言可選 ,也有移動端的應用。來這裡挑戰,最好要有數據結構的基礎!
Mimo: Learn to Codegetmimo.com
編碼直觀,是想學習編程的初學者的選擇之一,通過填寫代碼的缺失部分訓練編程知識, 是一種比較紮實的訓練模式。有移動端的 APP。
Brilliant | Learn to thinkbrilliant.org
Brilliant 是學習數學和計算機科學方面的一個優秀的場所,有 PC 端的,也有手機端的 APP 。各個年齡的人都可以用,解決挑戰的學習方式是互動性的,而且它非常的圖形化,還莫名的附帶幽默感,比如用 Python 知識控制那隻 「綠烏龜」 畫出各種圖形,破解密碼。
一款在手機端隨時隨地學習程式語言的應用,支持 Python、算法、SQL、HTML、CSS等方面的學習,是一種互動式的學習方式,通過大量的實踐對答,來不斷地提高自己的編程水平,讓學習變得簡單。
學習數據科學、編碼等技能的 APP,這裡可以練習 Python ,從基礎知識和標準概念入手,比較容易理解,然後開始編寫少量的代碼,挺適合沒有編程經驗的人,可以學習知識點,做小測試。