#刷書Day14#
作者:【美】Eric Matthes
Python之蟬:
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
本書的目的:
通過閱讀本書,將迅速掌握編程概念,打下堅實的基礎,以便能夠編寫能正確運行的程序——游戲、數據可視化和Web應用程序,并養成良好的習慣。閱讀本書后,你就可以開始學習Python高級技術,并能夠更輕松地掌握其他編程語言。
本書的架構:
第一部分:掌握基礎知識
(1)學習各種數據以及在程序中將數據存儲到列表和字典中的方式。
(2)學習如何創建數據集合以及如何高效地遍歷這些集合。
(3)學習使用while和if語句來檢查條件,并在條件滿足時執行代碼的一部分,而在條件不滿足時執行代碼的另一部分——這可為自動完成處理提供極大的幫助。
(4)學習獲取用戶輸入,讓程序能夠與用戶交互,并在用戶沒停止輸入時保持運行狀態。
(5)探索如何編寫函數來讓程序的各個部分可重用,這樣在編寫執行特定任務的代碼后,想使用它多少次都可以。
(6)學習使用類來擴展這種概念以實現更復雜的行為,從而讓非常簡單的程序也能處理各種不同的情形。
(7)學習編寫妥善處理常見錯誤的程序。學習這些基本概念后,你就能編寫一些簡短的程序來解決一些明確的問題。
(8)向中級編程邁出第一步,學習如何為代碼編寫測試,以便在進一步改進程序時不用擔心可能引入bug。第一部分介紹的知識讓你能夠開發更大、更復雜的項目。
第二部分:開發三個項目,鞏固基礎知識
第一個項目(第12~14章)中,創建一個類似于《太空入侵者》的射擊游戲。這個游戲名為《外星人入侵》,它包含多個難度不斷增加的等級。完成這個項目后,你就能夠自己動手開發2D游戲了。
第二個項目(第15~17章)介紹數據可視化【解決商業問題】。數據科學家的目標是通過各種可視化技術來搞懂海量信息【可用于各個方面,比如:UX】。你將使用通過代碼生成的數據集、已經從網絡下載【爬蟲】下來的數據集以及程序自動下載的數據集【掌握第一部分,真的很重要】。完成這個項目后,你將能夠編寫能對大型數據集進行篩選的程序,并以可視化方式將篩選出來的數據呈現出來【進階后,便可商業化】。
在第三個項目(第18~20章)【創建Web應用程序】中,你將創建一個名為“學習筆記”的小型Web應用程序。這個項目能夠讓用戶將學到的與特定主題相關的概念記錄下來。你將能夠分別記錄不同的主題,還可以讓其他人建立賬戶并開始記錄自己的學習筆記。你還將學習如何部署這個項目,讓任何人都能夠通過網絡訪問它,而不管他身處何方。【這個真的很棒,一方面可以根據自己的需求調整,另一方面,避免了更多花費】
學習python的優勢:
1.Python是一種效率極高的語言:使用Python編寫時,程序包含的代碼行更少。
2.Python的語法有助于創建整潔的代碼:使用Python編寫的代碼更容易閱讀、調試和擴展。
3.無論是商業問題的解決,還是學術研究,python都表現出強大的能力。
4.編程絕非孤獨的修行,大多數程序員都需要向解決過類似問題的人尋求建議,哪怕是:經驗最為豐富的程序員也不例外。而python正好有一個聯系緊密、互幫互助的社區,Python社區有形形色色充滿激情的人。對程序員來說,社區非常重要。
建議:嘗試根據自己的興趣,利用python開發出有意義的項目;并在開發自己感興趣的項目和提高python技能之間取得平衡。