20211403 左穎《Python程式設計》實驗四綜合實踐實驗報告
20211403 2021-2022-2 《Python程式設計》實驗四報告
課程:《Python程式設計》
班級: 2114
姓名: 左穎
學號:20211403
實驗教師:王志強
實驗日期:2022年5月31日
必修/選修: 公選課
1.實驗內容
課程要求
Python綜合應用:爬蟲、資料處理、視覺化、機器學習、神經網路、遊戲、網路安全等。
課代表和各小組負責人收集作業(原始碼、視訊、綜合實踐報告)
注:在華為ECS伺服器(OpenOuler系統)和物理機(Windows/Linux系統)上使用VIM、PDB、IDLE、Pycharm等工具程式設計實現。
批閱:注意本次實驗不算做實驗總分,前三個實驗每個實驗10分,累計30分。本次實踐算入綜合實踐,打分為25分。
評分標準:
(1)程式能執行,功能豐富。(需求提交原始碼,並建議錄製程式執行的視訊)10分
(2)綜合實踐報告,要體現實驗分析、設計、實現過程、結果等資訊,格式規範,邏輯清晰,結構合理。10分。
(3)在實踐報告中,需要對全課進行總結,並寫課程感想體會、意見和建議等。5分
(4)如果沒有使用華為雲服務(ECS或者MindSpore均可),本次實踐扣10分。
注意:每個人的實驗不能重複,課代表先統計大家做的內容並彙總,有重複的需要自行協商。
實驗具體內容
“見縫插針”小遊戲相信大家並不陌生,在商場中有很多口紅機都使用了“見縫插針”小遊戲作為原型,所以我想自己製作一款這樣的遊戲。
2. 實驗過程及結果
實驗分析
玩家按下空格鍵後發射一根針到圓盤上,所有已發射的針跟著圓盤逆時針方向轉動;如果新發射的針碰到了已有的針,則遊戲結束。
實驗還需要新增一些音效來增加遊戲體驗。
圓盤與針的顯示以及針的旋轉
首先在視窗顯示一個空心圓,然後繪製一根針,在已經完成前兩步的基礎上,新增程式碼,使針旋轉(這裡使用了update()函式)。
針的發射與開始轉動
多針發射與轉動
遊戲失敗之後的判斷與停止旋轉
得分統計與遊戲資訊顯示
新增一些音效(蒐集網上資源、教程)
華為雲上執行
3. 實驗過程中遇到的問題和解決過程
- 問題1:開始做圓的時候,圓太小了,然後到了後來發現整體不太美觀
- 問題1解決方案:修改了前期生成的圓的大小,並且保持圓心在一個點不移動。
- 問題2:想要加音效,但是找了素材,匹配不上針的發射
- 問題1解決方案:看了網上相關的成功例子,到社群下載相匹配的素材,然後匹配。
其他(感悟、思考等)
收穫
當自己的程式碼執行出了問題除了問老師,還可以上網查詢資料,或許可以在網上找到更多精進的方法。在遊戲製作結束後,我覺得還能在一些地方進行改進:
1.隨著遊戲的進行,針的旋轉速度越來越快,遊戲難度越來越大;
2.嘗試在畫面中間新增一根針,實現雙人版的見縫插針遊戲。
感悟
作為一名已經在上個學期接觸過python的大一學生,我當時選這門課的時候在猶豫,不知道我能不能在課上學到更多知識,但後來王老師的講課打消了我的疑慮。
上個學期婁老師已經帶我們初步接觸了python,但是畢竟是導論課,相關的知識點還不夠清晰成系統,所以我面對一些能用python解決的問題的時候,我有大體的思路,但是不能把我的想法最後落地實踐。而上了王老師的公選課以後,我學到了很多有用的知識,而且我感覺我的實操能力也更強了。
我除了溫習了關於python的相關基本知識點,還學習了爬蟲等新的技能。
特別喜歡王老師的公選課,老師有趣幽默,講課也特別有意思,講的知識也是很通俗易懂。
一個學期下來,我覺得自己對python的知識掌握得更深了,而且也變得更有耐心了,遇到實驗中的問題,先自己仔細想想能不能解決,不可以的話就上網查或者是問問同學,感覺自己不是一遇到問題就退縮的我了哈哈哈。
總之感謝遇見,感謝能和王老師一起度過這學期的公選課,學習有趣的python知識。
參考資料
[《Python遊戲趣味程式設計》](https://www.epubit.com/bookDetails?id=UB72096d97d6149&typeName=搜尋)