1. 程式人生 > >適合練習的10個Python專案,每個專案都不到500行程式碼

適合練習的10個Python專案,每個專案都不到500行程式碼

以下10個練手專案均摘錄自一本尚未出版的 Python 神書《500 Lines or Less》,儘管沒有出版,但其 review 版已在官方部落格放出。

更多Python視訊、原始碼、資料加群960410445免費獲取

1. 實現一個網路爬蟲

不多說,幾百行程式碼實現高效的網路爬蟲, 高效!

專案連結:http://aosabook.org/en/500L/a-web-crawler-with-asyncio-coroutines.html

2. Python 實現資料庫

如何用 Python 實現一個數據庫,支援 query,index, transaction, 兩三百行程式碼和對每個函式的講解。看完你就知道知道資料庫原理!

專案連結:http://aosabook.org/en/500L/an-archaeology-inspired-database.html

3. Python 解析器實現

手把手教你如何實現 Python 解析器。

專案連結:http://aosabook.org/en/500L/a-python-interpreter-written-in-python.html

4. 一個簡單的計步器

你用過手機應用記錄你每天走的步數,然後傳送到朋友圈嗎? (沒有? 沒關係。)這章告訴你如何實現步數記錄,怎麼算走一步。手機中有加速記,很容易獲得你某一時刻在 x,y,z 三個方向的加速度,用這些引數,如何計算你走了多少步? 知道嗎? 不知道,看這章,講解加實現。

專案連結:http://aosabook.org/en/500L/a-pedometer-in-the-real-world.html

5. 識別手寫字母

幾百行程式碼使用人工神經網路實現識別手寫字母。

專案連結:http://www.aosabook.org/en/500L/optical-character-recognition-ocr.html

6. 一個簡單的專案模型

Python 是面嚮物件語言,物件,繼承,多型,怎麼用程式碼實現的,不到500行程式碼,實際不到400行!

專案連結:http://aosabook.org/en/500L/a-simple-object-model.html

7. 靜態解析器

成熟的 IDE 都有程式碼檢查和程式碼提示,怎麼做的? 看這裡。

專案連結:http://aosabook.org/en/500L/static-analysis.html

8. 一個模板引擎

MVC 模型中的 view 層如何解析 html 中的靜態變數和簡單的語句,如下:

適合新手練習的10個專案,每個專案都不到500行程式碼

 

Web 中的 view 層不只是 html 程式碼,還有支援其他的程式碼。比如 `{products} `是一個變數。 同時 view 層還支援 {if} , {for}, {foreach} 等等。django,velocity 等是如何解析他們的?大牛用不到500行程式碼告訴你,是如何實現的。

專案連結:http://aosabook.org/en/500L/a-template-engine.html

9. 一個3D模型

用 Python 實現一個3D設計,顯示到螢幕,可以互動。

專案連結:http://aosabook.org/en/500L/a-3d-modeller.html

10. 電子表格

Web 的電子表格如何實現的?看這個經典實現。

專案連結:http://aosabook.org/en/500L/web-spreadsheet.html

適合新手練習的10個專案,每個專案都不到500行程式碼