"
源:Python熱愛者

隨著人工智能的興起,國內掀起了一股Python學習熱潮,入門級編程語言,大多選擇Python,有經驗的程序員,也開始學習Python,正所謂是人生苦短,我用Python。

有個Python入門練手項目,一直沒有和大家推薦過,這個開源項目還是一本書,這本書最大的特點在於每個章節都是由一位該領域的開源大牛編寫的,每章包含一個程序實現,這些程序的代碼都在500行以內,故而這本書叫——《500 Lines or Less》

"
源:Python熱愛者

隨著人工智能的興起,國內掀起了一股Python學習熱潮,入門級編程語言,大多選擇Python,有經驗的程序員,也開始學習Python,正所謂是人生苦短,我用Python。

有個Python入門練手項目,一直沒有和大家推薦過,這個開源項目還是一本書,這本書最大的特點在於每個章節都是由一位該領域的開源大牛編寫的,每章包含一個程序實現,這些程序的代碼都在500行以內,故而這本書叫——《500 Lines or Less》

推薦:一個適合於Python新手的入門練手項目


這本書在 GitHub 上的名稱為 500lines,目前已經獲得 20344 個 Star,4697 個Fork

雖說本書是關於Python入門,但實際上並非所有代碼都是用Python編寫的,裡面也有一些項目採用Ruby、C、JavaScript等編寫,實際上這本書的重點不在於編程語言,更側重於程序員在編寫代碼時所作出的設計決策和權衡:

  • 為什麼使用這些特定接口將應用程序劃分為特定的模塊?
  • 為什麼這裡使用繼承,那裡使用封裝?
  • 如何預測程序可能需要擴展的地方,以及如何讓程序員輕鬆實現


"
源:Python熱愛者

隨著人工智能的興起,國內掀起了一股Python學習熱潮,入門級編程語言,大多選擇Python,有經驗的程序員,也開始學習Python,正所謂是人生苦短,我用Python。

有個Python入門練手項目,一直沒有和大家推薦過,這個開源項目還是一本書,這本書最大的特點在於每個章節都是由一位該領域的開源大牛編寫的,每章包含一個程序實現,這些程序的代碼都在500行以內,故而這本書叫——《500 Lines or Less》

推薦:一個適合於Python新手的入門練手項目


這本書在 GitHub 上的名稱為 500lines,目前已經獲得 20344 個 Star,4697 個Fork

雖說本書是關於Python入門,但實際上並非所有代碼都是用Python編寫的,裡面也有一些項目採用Ruby、C、JavaScript等編寫,實際上這本書的重點不在於編程語言,更側重於程序員在編寫代碼時所作出的設計決策和權衡:

  • 為什麼使用這些特定接口將應用程序劃分為特定的模塊?
  • 為什麼這裡使用繼承,那裡使用封裝?
  • 如何預測程序可能需要擴展的地方,以及如何讓程序員輕鬆實現


推薦:一個適合於Python新手的入門練手項目


書中一共有22個項目,下面介紹一下,這本書都有哪些項目:

1、Blockcode: A visual programming toolkit(可視化編程)

"
源:Python熱愛者

隨著人工智能的興起,國內掀起了一股Python學習熱潮,入門級編程語言,大多選擇Python,有經驗的程序員,也開始學習Python,正所謂是人生苦短,我用Python。

有個Python入門練手項目,一直沒有和大家推薦過,這個開源項目還是一本書,這本書最大的特點在於每個章節都是由一位該領域的開源大牛編寫的,每章包含一個程序實現,這些程序的代碼都在500行以內,故而這本書叫——《500 Lines or Less》

推薦:一個適合於Python新手的入門練手項目


這本書在 GitHub 上的名稱為 500lines,目前已經獲得 20344 個 Star,4697 個Fork

雖說本書是關於Python入門,但實際上並非所有代碼都是用Python編寫的,裡面也有一些項目採用Ruby、C、JavaScript等編寫,實際上這本書的重點不在於編程語言,更側重於程序員在編寫代碼時所作出的設計決策和權衡:

  • 為什麼使用這些特定接口將應用程序劃分為特定的模塊?
  • 為什麼這裡使用繼承,那裡使用封裝?
  • 如何預測程序可能需要擴展的地方,以及如何讓程序員輕鬆實現


推薦:一個適合於Python新手的入門練手項目


書中一共有22個項目,下面介紹一下,這本書都有哪些項目:

1、Blockcode: A visual programming toolkit(可視化編程)

推薦:一個適合於Python新手的入門練手項目


該項目主要通過龜圖(turtle graphics)實現塊語言,通過簡單拖放創建圖案,整個過程通過常用的Html、CSS和JavaScript來實現(每一個塊由html元素組成,CSS用於設置樣式,JavaScript時間處理器進行拖拽並修改參數)。屬於圖片編程的一種

2、A Continuous Integration System(持續集成系統)

持續集成(CI)系統是Python編寫的用於測試新代碼的專用系統。該項目使用Git作為測試代碼的存儲庫。但它只使用標準的源代碼管理調用,如果你不熟悉Git但熟悉其他版本控制系統(VCS),如svn或Mercurial,也是可以正常使用。該系統有三大主要功能:獲取更改後代碼、自動測試代碼、生成測試報告

3、Clustering by Consensus(分佈式系統)

分佈式系統 paxos原理與實現,並採用一些技巧幫助你儘可能的減少和查找、修復漏洞以及特別的開發調試技巧。

4、Contingent: A Fully Dynamic Build System(文檔系統)

使用python構建一個文檔系統

5、A Web Crawler With asyncio Coroutines(爬蟲)

幾百行代碼實現一個簡單的Web爬蟲程序

6、Dagoba: an in-memory graph database(圖形數據庫)

這個項目主要講述如何通過JavaScript構建一個圖形數據庫

7、DBDB: Dog Bed Database(key-value的非關係型數據庫)

DBDB(Dog Bed Database)是一個Python庫,它實現了一個簡單的key-value的非關係型數據庫,旨在保護計算機出現崩潰或者報錯時的數據。

8、A Flow Shop Scheduler

Flow Shop 調度問題,通過Python的一些功能特性,用少量的代碼,從局部最優解找全局最優解

9、Making Your Own Image Filters

"
源:Python熱愛者

隨著人工智能的興起,國內掀起了一股Python學習熱潮,入門級編程語言,大多選擇Python,有經驗的程序員,也開始學習Python,正所謂是人生苦短,我用Python。

有個Python入門練手項目,一直沒有和大家推薦過,這個開源項目還是一本書,這本書最大的特點在於每個章節都是由一位該領域的開源大牛編寫的,每章包含一個程序實現,這些程序的代碼都在500行以內,故而這本書叫——《500 Lines or Less》

推薦:一個適合於Python新手的入門練手項目


這本書在 GitHub 上的名稱為 500lines,目前已經獲得 20344 個 Star,4697 個Fork

雖說本書是關於Python入門,但實際上並非所有代碼都是用Python編寫的,裡面也有一些項目採用Ruby、C、JavaScript等編寫,實際上這本書的重點不在於編程語言,更側重於程序員在編寫代碼時所作出的設計決策和權衡:

  • 為什麼使用這些特定接口將應用程序劃分為特定的模塊?
  • 為什麼這裡使用繼承,那裡使用封裝?
  • 如何預測程序可能需要擴展的地方,以及如何讓程序員輕鬆實現


推薦:一個適合於Python新手的入門練手項目


書中一共有22個項目,下面介紹一下,這本書都有哪些項目:

1、Blockcode: A visual programming toolkit(可視化編程)

推薦:一個適合於Python新手的入門練手項目


該項目主要通過龜圖(turtle graphics)實現塊語言,通過簡單拖放創建圖案,整個過程通過常用的Html、CSS和JavaScript來實現(每一個塊由html元素組成,CSS用於設置樣式,JavaScript時間處理器進行拖拽並修改參數)。屬於圖片編程的一種

2、A Continuous Integration System(持續集成系統)

持續集成(CI)系統是Python編寫的用於測試新代碼的專用系統。該項目使用Git作為測試代碼的存儲庫。但它只使用標準的源代碼管理調用,如果你不熟悉Git但熟悉其他版本控制系統(VCS),如svn或Mercurial,也是可以正常使用。該系統有三大主要功能:獲取更改後代碼、自動測試代碼、生成測試報告

3、Clustering by Consensus(分佈式系統)

分佈式系統 paxos原理與實現,並採用一些技巧幫助你儘可能的減少和查找、修復漏洞以及特別的開發調試技巧。

4、Contingent: A Fully Dynamic Build System(文檔系統)

使用python構建一個文檔系統

5、A Web Crawler With asyncio Coroutines(爬蟲)

幾百行代碼實現一個簡單的Web爬蟲程序

6、Dagoba: an in-memory graph database(圖形數據庫)

這個項目主要講述如何通過JavaScript構建一個圖形數據庫

7、DBDB: Dog Bed Database(key-value的非關係型數據庫)

DBDB(Dog Bed Database)是一個Python庫,它實現了一個簡單的key-value的非關係型數據庫,旨在保護計算機出現崩潰或者報錯時的數據。

8、A Flow Shop Scheduler

Flow Shop 調度問題,通過Python的一些功能特性,用少量的代碼,從局部最優解找全局最優解

9、Making Your Own Image Filters

推薦:一個適合於Python新手的入門練手項目


通過Processing(一種用Java構建的編程語言和開發環境)創建一個圖像過濾器

10、A Python Interpreter Written in Python(Python解釋器)

Byterun是一個用Python實現的Python解釋器,這個項目主要是幫助你搞清楚這個解釋器的結構

11、A 3D Modeller

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

12、a-simple-object-model(對象模型)

本章探討了一系列非常簡單的對象模型的實現。碼適用於Python 2.7和3.4,為了更好理解,還介紹了對象模型測試。

13、Optical Character Recognition (OCR)

AI的一個眾所周知的應用是光學字符識別(OCR)。OCR系統是一種軟件,該項目將使用神經網絡(ANN)搭建一個OCR系統

14、A Pedometer in the Real World(計步器)

教你如何使用Ruby建立一個基本的計步器,並在代碼中添加一個Web層,為用戶提供一個友好UI界面

15、The Same-Origin Policy(SOP)

SOP是每個現代瀏覽器安全機制的重要組成部分。該項目使用Alloy(一種用於建模和分析軟件設計的語言),構建一個SOP模型

16、A Rejection Sampler(決策取樣器)

該項目將對採樣、多項分佈、隨機分佈等名詞,通過Python編程方式來實現。

17、Web Spreadsheet(Web 電子表格)

該項目僅僅用了99行 HTML、CSS 和 JS 代碼就寫出一個Web 的電子表格

18、Static Analysis(靜態分析)

通過Julia代碼編寫靜態分析工具,一種基於類型的靜態分析工具,一種是基於變量的靜態分析工具。

19、A Template Engine(模板引擎)

任何Web應用程序中的一個重要階段是生成要提供給瀏覽器的HTML。本項目通過Python構建一個簡單的模板引擎,解析 html 中的靜態變量和簡單的語句

20、A Simple Web Server(Web服務器)

利用Python搭建一個簡單的 Web 服務器

21、An Event-Driven Web Framework

在Common Lisp中構建一個Web框架,解決遊戲中交互的問題

22、An Archaeology-Inspired Database

488行Clojure源代碼構建數據庫,其中73行是空白行,55行是文檔字符串。

寫在最後

如果你對這本書感興趣,可以通過官方鏈接免費閱讀,也可以購買原版平裝書籍或者PDF版本


最後,我自己是一名從事了多年開發的Python老程序員,辭職目前在做自己的Python私人定製課程,今年年初我花了一個月整理了一份最適合2019年學習的Python學習乾貨,可以送給每一位喜歡Python的小夥伴,想要獲取的可以關注我的頭條號並在後臺私信我:01,即可免費獲取。

"

相關推薦

推薦中...