學習Python最好的途徑——激發自己的學習興趣!

Python是當下國內最爲火爆的編程語言,沒有之一!

Python加入計算機等級考試,且即將加入考高,甚至於有小學都開始教授Python!

學習Python最好的途徑——激發自己的學習興趣!
Python 的概念
“人生苦短,我用Python”。這句戲言真實反映了Python語言的江湖地位。那麼,要快速上手和進階Python編程,有什麼好途徑呢?我推薦遊戲開發。
創一個小羣,供大家學習交流聊天
如果有對學python方面有什麼疑惑問題的,或者有什麼想說的想聊的大家可以一起交流學習一起進步呀。
也希望大家對學python能夠持之以恆
python愛好羣,
如果你想要學好python最好加入一個組織,這樣大家學習的話就比較方便,還能夠共同交流和分享資料,給你推薦一個學習的組織:快樂學習python組織 可以點擊組織二字,可以直達

遊戲開發激發學習熱情

作爲一名擁有十餘年程序設計教學經驗的老師,我清楚地記得,當告訴學生們課程任務有俄羅斯方塊遊戲開發的時候,部分同學在課堂上熱切地喊出“好耶”,部分同學鼓起掌來,大家一副躍躍欲試的神情。

那是我在2014級軟件工程專業教學改革試點班中做的嘗試。開設的課程叫作“大學計算機基礎B”,一共16周,64學時。前面第11周講授計算機基礎和Python編程,後面5周學生學習C/C++(因後續課程需要)。後5周的大作業就是基於Win32 API開發俄羅斯方塊遊戲程序。我多少有些擔心學生是否做得下來,然而到驗收的那一天,我有些吃驚。大部分同學的作品都明顯超出了作業要求的標準。

儘管有很多因素(比如強有力的教輔)促成了這樣的好結果,但我認識到一個重要的原因是“激發了學生們的學習熱情”。是的,遊戲開發有這個效果。有學生告訴我,他把自己的作品發佈到高中同學羣,讓同學們玩玩,結果贏得讚譽一片。我察覺到了學生嘴角露出了小小的得意。有學生開夜車編程序,搞到凌晨兩三點都不想去睡覺。所以呢,我百分百肯定,遊戲開發是學習Python編程的好途徑。

遊戲開發門檻低

用Python開發遊戲的門檻是很低的。例如,實現顯示遊戲窗口(見圖1)的代碼,不包括空行和註釋行的話,只需要15行。如果你想親自驗證一下,那麼請閱讀我發佈的代碼文件,然後數一數其中有實際功能的代碼行數。我以前用VC++開發圖形界面程序的時候,實現顯示遊戲窗口的代碼有一大堆,跨好幾個文件,讓人望而生畏。用Python的話,基於Pygame模塊,15行代碼就搞定了。

學習Python最好的途徑——激發自己的學習興趣!
遊戲窗口
無論是Python入門,還是Python進階,學習者都有適合的遊戲開發項目可供選擇。正是這樣,Python語言成爲教孩子學編程的優先選擇。教小孩學編程,可不能一本正經的,必須用好招吸引他們,激發他們。遊戲開發就是常用的招術。以《教孩子學編程(Python語言版)》一書爲例,該書一開頭就教孩子繪製彩色螺旋線,接着教孩子編寫小遊戲,然後教孩子編寫具有動畫、鼠標控制的遊戲。我建議初學者可以自降身份去學一學這本書。如果你想編寫有更多挑戰的遊戲,那麼建議你學習《Python遊戲編程快速上手》一書或者《Python遊戲編程入門》一書。

還想要更高一點的挑戰?建議你嘗試跟着我學習“用Python開發俄羅斯方塊”。你可以訪問我在GitChat開設的達人課。該教程面向的是已有Python編程基礎的、想進一步提高Python編程能力的開發者。教程設計採用“小步走”策略,一共有22篇文章。每一篇都是一個完整的實驗步驟,實現一個功能。在每一篇文章中,首先指出實驗步驟的目標,也就是指出完成整個步驟後,程序運行效果是什麼樣的。接着,描述實驗步驟的實現思路和任務。然後,逐個任務地講解具體的做法,也即指出哪裏要修改/補充什麼代碼,改寫後的代碼是什麼樣的,爲什麼要這樣做。最後,給出該實驗步驟完成後的源代碼版本的Github鏈接,供瀏覽或下載。到最後,我們將實現能供家人、朋友或同學實際玩一玩的俄羅斯方塊遊戲。圖2是運行界面的截屏。我上傳的視頻呈現了該程序的運行效果。

學習Python最好的途徑——激發自己的學習興趣!
俄羅斯方塊
有沒有開源的遊戲程序呢?有的,知乎上的一篇文章推薦了不少開源項目。其中推薦的 BombSquad是一個 3D ×××人遊戲,界面(見圖3)還是挺酷炫的。

學習Python最好的途徑——激發自己的學習興趣!
×××人遊戲
從遊戲開發中能學到什麼

開發者有機會接觸到千行代碼量級的程序。初級開發者編寫的程序一般只有幾十行代碼。要指出的是,編寫幾十行代碼的程序和編寫千行代碼的程序,完全不是一個量級的事。至少,千行代碼這一現實將促使開發者養成使用函數的習慣。我上編程基礎課的時候,由於編寫的程序只有幾十行代碼,學生不願意用函數,你再苦口婆心地講道理也沒用。

遊戲開發要求開發者採用良好的結構來組織代碼。程序的代碼量上去了,會促使開發者使用多個模塊文件,甚至使用類與對象來編程。

從遊戲開發中,開發者將學習圖形界面開發(GUI),理解事件驅動編程模型。這將會幫助開發者消除對軟件的神祕感,有助於開發者開展更多的探索。

遊戲開發會提高開發者的學習能力。例如,遊戲開發會用到python標準庫以及各種第三方庫。這將促使開發者藉助網絡和手冊,查詢各個函數的用法,學習相關的概念和知識。一點一點地,開發者擁有更多知識,更強的學習能力。

遊戲開發實踐注意事項

切勿囫圇吞棗。不要這樣做:照着書本或者教程敲(甚至複製)一遍代碼,跑一遍程序就算完事了。你必須自己搞懂。無論是整體思路,還是一行代碼內的細節,你都要吃透。怎樣算吃透了程序?不借助書本或教程(藉助手冊查閱函數的用法是可以的),能正確地再寫一遍程序。

採用“小步走”策略。下一步只實現一個小功能。實現完成後,檢查運行效果。通過後再去完成下一個功能。

多用函數,多用函數,多用函數。把程序代碼分解到多個模塊文件。使用類和對象來組織代碼。

尋求幫助。我遇到問題的時候,首先做的是釐清問題是什麼。接着,我會在網絡引擎的搜索框內輸入描述問題的關鍵詞,期望得到解決辦法的線索。這幫了我的大忙。最後,我偶爾會到論壇上提問。CSDN論壇就是一個好選擇。

最重要的是,動手幹!

學習Python最好的途徑——激發自己的學習興趣!
人生苦短,我用Python!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章