摘要:當(dāng)今人工智能時代的發(fā)展,Python作為專注于數(shù)據(jù)分析和人工智能的編程語言,越來越被各個學(xué)科重視起來,Python語言的普及使各專業(yè)在教學(xué)方法和教學(xué)內(nèi)容上也存在著較大的分歧,作為非計算機(jī)專業(yè)的學(xué)生,如何讓他們能夠更好的理解編程邏輯和語法,成為教學(xué)難點,本文提出了一種結(jié)合游戲案例和可視化案例的趣味性教學(xué)方法,能夠有效提高Python語言的教學(xué)效果。
關(guān)鍵詞:Python教學(xué);趣味性;游戲案例;可視化案例
0緒論
隨著國家對人工智能行業(yè)的推動,作為人工智能相關(guān)學(xué)科的基礎(chǔ)語言Python也被越來越重視,在很多高校,《Python語言程序設(shè)計》經(jīng)歷了選修課到必修課的轉(zhuǎn)換,另外,很多非計算機(jī)專業(yè),甚至文科類和藝術(shù)類專業(yè)也開始籌劃開展Python語言教學(xué),以便于更好的做數(shù)據(jù)采集和分析等方面的工作。
Python作為一門完全面向?qū)ο蟮恼Z言,具有簡單易學(xué)、開源可移植、解釋性、以及豐富的第三方庫等特點,簡單易學(xué)主要體現(xiàn)在Python的語法規(guī)則更具有親和力,對非計算機(jī)類專業(yè)的人員也非常友好。豐富的第三方庫決定了Python的應(yīng)用范圍非常廣,比如著名的機(jī)器學(xué)習(xí)庫sklearn,該庫使機(jī)器學(xué)習(xí)的教學(xué)與學(xué)習(xí)上升了一個新的高度,以前很多晦澀難懂的理論概念,以及算法編碼變得簡單易學(xué),只需要調(diào)用相關(guān)方法,便可以完成數(shù)據(jù)的特征化和標(biāo)準(zhǔn)化。
1Python教學(xué)現(xiàn)有問題分析
1.1教學(xué)方式
傳統(tǒng)的Python教學(xué)中多采用案例式教學(xué),知識點的講解與案例講解相結(jié)合,讓學(xué)生在學(xué)習(xí)中通過練習(xí)的方式掌握和鞏固知識,但是,由于Python是解釋性的腳本語言,它可以一句一句的解釋執(zhí)行,并且可以馬上看到演示結(jié)果。Python的特點決定了在授課過程中無需講解過多的語法知識,重點應(yīng)放在如何應(yīng)用Python解決實際問題。
1.2教學(xué)內(nèi)容
Python語言程序設(shè)計的參考教材目前較多,大多數(shù)參考教材將課程集中在Python基礎(chǔ)語法、三種基本結(jié)構(gòu)、字符串、列表、元組、字典、函數(shù)、文件的讀寫等內(nèi)容上,按照Python官方文檔的順序進(jìn)行編寫教材,沒有考慮到實際的應(yīng)用,以及知識的前后位置關(guān)系。比如可迭代數(shù)據(jù)類型的迭代要用到for循環(huán),不少參考教材將字符串的放在了循環(huán)結(jié)構(gòu)之前,只是對字符串的常用函數(shù)和方法的講解,造成了課堂枯燥無趣。
1.3教學(xué)目標(biāo)
Python語言的用處較廣,不同的專業(yè)對Python的需求不一樣,人工智能方向主要是使用Python語言做機(jī)器學(xué)習(xí)和深度學(xué)習(xí)的相關(guān)工作,大數(shù)據(jù)方向則是要用Python做數(shù)據(jù)處理數(shù)據(jù)分析等相關(guān)工作,傳媒類專業(yè)可以使用Python做數(shù)據(jù)可視化等相關(guān)工作,不同的發(fā)展方向決定了Python應(yīng)該有不同的教學(xué)目標(biāo),也要根據(jù)不同的教學(xué)目標(biāo)對教學(xué)內(nèi)容做適當(dāng)?shù)恼{(diào)整,比如組合數(shù)據(jù)類型中的集合,在很多時候都是可以不進(jìn)行講解的。
2基于趣味性的教學(xué)方法
“興趣是最好的老師”,對于知識的理解,人們一直在強(qiáng)調(diào)趣味性優(yōu)先,其實,教育工作者所提倡的所有的教學(xué)方法都是以提升學(xué)生的內(nèi)驅(qū)力為基礎(chǔ)的。如果學(xué)生不喜歡這個編程語言,那么大多數(shù)學(xué)生都無法將該課程學(xué)習(xí)的很好,更不用說精通該課程了。
趣味性的表達(dá)方式不一而足,常見的有游戲化案例、可視化案例等方法。
2.1游戲案例式教學(xué)
游戲案例可以參考一些常玩的游戲進(jìn)行簡化,比如猜數(shù)字的游戲,猜數(shù)字的游戲可以在選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)部分講解,該游戲理解起來較為簡單,學(xué)生可以通過設(shè)計這個游戲鍛煉其思維能力和編碼能力,另外在猜測的過程中,還用到了窮舉法和二分查找法等算法和思想,如果學(xué)生學(xué)習(xí)過數(shù)據(jù)結(jié)構(gòu)或其他編程語言,此類算法思想也可以加入到教學(xué)中,使教學(xué)更加立體化。除了猜數(shù)字還有石頭剪刀布等游戲。
對于稍微復(fù)雜一些的游戲,涉及到UI界面的操作的游戲要用到的知識就更多一些,比如飛機(jī)大戰(zhàn)、水果忍者等小游戲,利用面向?qū)ο蟮乃枷?,將各個對象的屬性及方法封裝起來,再設(shè)計游戲的玩法,這里面就會涉及到一些其他包的使用,比如pygame等。
2.2可視化案例教學(xué)方法
編碼結(jié)果的可視化對學(xué)生來說,理解起來會起到事半功倍的效果,常規(guī)的編程語言,如C語言,采用控制臺打印程序結(jié)果的方式進(jìn)行教學(xué)演示,對于剛接觸編程的學(xué)生來說,此種方式在接受起來是有一定的難度的。對于其他專業(yè)的學(xué)生來說,更是如此,而可視化的程序結(jié)果演示能夠更加直觀。
在Python中,經(jīng)常使用的可視化工具是turtle庫,turtle工具的作用是提供了一個畫筆工具,該工具封裝了一些用于調(diào)整畫筆粗細(xì)、顏色、運動等功能的方法,利用這些方法結(jié)合程序基本控制結(jié)構(gòu),可以繪制一些圖形,圖形的復(fù)雜與否取決于程序的設(shè)計。
利用turtle工具在基本程序結(jié)構(gòu)的學(xué)習(xí)階段,可以引入畫圓的方法,繪制圓形的方法就是讓畫筆不斷的向前走,再轉(zhuǎn)一個小的角度,比如可以使用360次循環(huán),每次移動兩個像素,每次右轉(zhuǎn)1度,如此循環(huán)下來便可繪制一個圓形,該案例既讓學(xué)生對循環(huán)結(jié)構(gòu)有了更好的認(rèn)識,又能夠通過可視化的方式繪制了成品,趣味性十足。與之相同的,還有循環(huán)結(jié)構(gòu)和選擇結(jié)構(gòu)的結(jié)合繪制虛線,列表學(xué)習(xí)中可以繪制七彩圓環(huán),讓學(xué)生掌握列表元素的索引。
對于復(fù)雜的圖形,多數(shù)圖形其實是有規(guī)律的,通過多重循環(huán)嵌套,可以實現(xiàn)較為復(fù)雜的圖形,利用隨機(jī)數(shù)工具,可以通過索引列表元素,對要繪制的圖形更改畫筆粗細(xì),旋轉(zhuǎn)角度,顏色等屬性,而得到一些完全無規(guī)律的圖形。當(dāng)然也可以通過函數(shù)的遞歸調(diào)用,結(jié)合分形理論繪制樹木,結(jié)合粒子系統(tǒng)繪制火焰等圖形。
3結(jié)語
人工智能背景下,Python語言程序設(shè)計課程已經(jīng)單純的從計算機(jī)語言,轉(zhuǎn)換成了各個學(xué)科的學(xué)生必須具備的一種能力,以Python為工具的數(shù)據(jù)處理,數(shù)據(jù)分析,數(shù)據(jù)可視化等科目漸漸的走向了各個專業(yè)的課堂,無論學(xué)習(xí)的目標(biāo)是什么,基礎(chǔ)都要打牢固,而非計算機(jī)專業(yè)的學(xué)生在學(xué)習(xí)Python的時候,更加傾向于一種他們可以好接受,好理解的方法。本文通過論述游戲案例式教學(xué)方法和可視化教學(xué)方法,對非計算機(jī)專業(yè)的Python學(xué)習(xí)提供了一種較具親和力的教學(xué)模式,該模式已經(jīng)應(yīng)用于日常教學(xué),從學(xué)生反饋出來的成績和日常表現(xiàn)來看,該方法相較于以往呆板的語法教學(xué)方法,有了較大的改進(jìn)和較好的效果。
參考文獻(xiàn)
[1]李曉明.從趣味數(shù)學(xué)到趣味算法到趣味編程——非專業(yè)學(xué)習(xí)者體會計算思維的一條途徑?[J].計算機(jī)教育,2020,(11):1-3.
[2]易發(fā)勝;李立;趙麗琴.新工科背景下Python程序設(shè)計課程教學(xué)方法研究[J].計算機(jī)教育,2021,(07):148-151+156.
[3]段亞西;徐成振;魏凌華;高艷玲.Python語言程序設(shè)計課程教學(xué)方法探究[J].科技風(fēng),2021,(17):40-42.
作者簡介
周利玲(1989-)女,漢,湖北武漢,助教,碩士,武漢設(shè)計工程學(xué)院,軟件工程。