摘要:在新工科背景下,各地高校積極探索機器人專業(yè)的課程建設(shè),其中Python程序設(shè)計是該專業(yè)的一門選修課,該課程具有理論性和實踐性強的特點。本文結(jié)合新疆理工學院機器人專業(yè)學生的特點,從課程內(nèi)容、課程方法、課程考核3個方面,對該課程進行教學改革與探索,引導學生快速掌握基礎(chǔ)知識,提高學生的學習主動性,培養(yǎng)學生的編程能力。
關(guān)鍵詞:Python語言;教學改革;程序設(shè)計;編程能力
中圖分類號:TB"""""""文獻標識碼:A""""""doi:10.19311/j.cnki.16723198.2025.03.084
0"引言
Python是一種高級、通用、解釋型的編程語言,簡潔易讀,擁有龐大的標準庫和第三方庫,具有能在多個操作系統(tǒng)上運行的跨平臺特性[1]。隨著人工智能和機器學習等技術(shù)的迅猛發(fā)展,Python語言在這些領(lǐng)域的地位和重要性也逐漸彰顯出來,成為最受歡迎的編程語言之一[2]。Python程序設(shè)計課程有較強的理論性與實踐性,如果使用傳統(tǒng)教學方式,可能導致學生對知識的理解不深刻,難以應用和拓展[3]。本文以機器人工程專業(yè)為背景,致力于積極探索適合的教學方法和途徑,旨在提升學生的程序設(shè)計水平和計算機能力,培養(yǎng)高素質(zhì)的應用型人才,以滿足社會的服務(wù)需求。
1"課程存在的問題
1.1"課程內(nèi)容
Python程序設(shè)計課程的主要內(nèi)容包括:Python基礎(chǔ)知識、Python中的數(shù)據(jù)結(jié)構(gòu)、Python中的結(jié)構(gòu)語句、Python函數(shù)與模塊、Python面向?qū)ο缶幊?。其中,Python的基本數(shù)據(jù)結(jié)構(gòu)中的數(shù)字和字符串與C語言中的基本數(shù)據(jù)類型相似,結(jié)構(gòu)語句中的順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)等與C語言中的結(jié)構(gòu)語句也較為相似。在函數(shù)模塊,Python中的函數(shù)與C語言中的函數(shù)較為接近[4]。大多數(shù)學生在學習Python程序設(shè)計之前已系統(tǒng)學習過C語言,具有一定的編程語言基礎(chǔ),Python語言內(nèi)容簡單易懂,具有豐富的標準庫和大量的第三方模塊。Python"語言程序設(shè)計課程在高校中大多作為計算機基礎(chǔ)課程,基本上各理工科專業(yè)都有開設(shè)。由于該課程具有較強的實踐性,授課過程中應重點培養(yǎng)學生的邏輯和編程思維。但是當前課堂教學內(nèi)容過于繁瑣,不夠精簡,與實踐的結(jié)合能力較差。
1.2"傳統(tǒng)的課程教學方法
在當前的高校程序設(shè)計課程中,大多采用傳統(tǒng)的線下上機教學模式[5]。課前,學生通過自主預習網(wǎng)上資料、文獻閱讀和多媒體課件等,為課堂學習作準備。在課堂上,教師主要采用講授法、演示法、案例驅(qū)動法的教學方法,講解Python程序設(shè)計的理論和方法,讓學生進行編程實踐。然而,這種教學模式常常讓學生成為被動的知識接受者,缺乏學習的主動性。與此同時,傳統(tǒng)授課模式還存在一些問題。教學重點通常集中在理論知識的傳授上,教學方法相對單一,導致教師較少關(guān)注學生的實踐與問題解決能力的培養(yǎng)[6]。學生在課堂上學習的知識難以與實踐緊密結(jié)合,理論與實踐容易脫節(jié)。此外,學生較難從傳統(tǒng)教學中獲得成就感和自信心,導致學習的動力逐漸消失。
1.3"課程考核方式
目前“Python程序設(shè)計”課程的成績考核由3部分組成:平時成績(占總成績的30%)、實驗成績(占總成績的10%)和期末成績(占總成績的60%)。課程考核采用傳統(tǒng)的考核方式,忽略了本課程實踐性強的特點,容易造成學生不重視學習過程,在考前突擊學習,用死記硬背的方式通過考試。在這種考核模式下,不能夠很好地調(diào)動學生日常學習的積極性,會使得學生對章節(jié)內(nèi)容的掌握不夠扎實,不利于知識在大腦中的長期儲備與靈活運用。
2"課程內(nèi)容建設(shè)與探索
2.1"課程內(nèi)容的優(yōu)化
(1)針對Python程序設(shè)計教學內(nèi)容相似的問題,針對基礎(chǔ)知識的講述過程中,可以采用比較法來快速教授理論知識。通過將C語言與Python進行對比,學生可以更加直觀地理解兩種程序語言之間的差異與共通之處,從而加深對程序語言的理解。通過比較C語言和Python,可以突出Python的簡潔性和易用性,使學生能夠更快地掌握基礎(chǔ)知識。例如,可以對比兩種語言的語法結(jié)構(gòu)、變量聲明、循環(huán)控制、函數(shù)定義等方面的差異,通過簡潔清晰的比較,幫助學生快速理解Python的特點和優(yōu)勢。此外,采用比較法能夠激發(fā)學生學習積極性。通過對不同語言進行對比,學生可以更深入地思考程序設(shè)計的原理和方法,培養(yǎng)他們批判性思維和解決問題的能力。這種積極性的學習態(tài)度可以激發(fā)學生主動思考和探索,在學習過程中更加積極主動、深入地參與。通過采用比較法教學,可以快速傳授理論知識,讓學生對程序語言有更深的理解。這樣的教學方法能夠為學生留出更多的時間來進行實際的程序案例講解和實踐操作。通過實例的講解和實踐,學生可以更好地將理論知識應用到實際問題中,提升他們的程序設(shè)計能力和解決問題的能力。
(2)針對Python程序設(shè)計教學內(nèi)容單一的問題,在課程基礎(chǔ)知識講授的過程中,結(jié)合知識點增加機器人工程專業(yè)的相關(guān)案例進行教學的實踐。如在學習Python基礎(chǔ)語法和數(shù)據(jù)類型時,可以編寫一個簡單的機器人控制程序,使機器人能夠移動和旋轉(zhuǎn);在學習條件語句和循環(huán)結(jié)構(gòu)時,可以設(shè)計一個機器人避障算法,使用條件語句判斷機器人前方是否有障礙物并進行相應的動作,或者使用循環(huán)結(jié)構(gòu)實現(xiàn)一個機器人的追蹤行為,讓機器人能夠追蹤并保持一定距離跟隨目標物體;在學習函數(shù)和模塊時,可以編寫一個函數(shù),實現(xiàn)機器人的自主導航算法,處理機器人傳感器數(shù)據(jù)并返回移動的指令,或者利用Python的圖形庫,設(shè)計一個模塊,實現(xiàn)圖形化界面來控制和監(jiān)控機器人;在學習文件操作時,可以編寫一個Python程序,讀取并解析機器人傳感器數(shù)據(jù)文件,提取關(guān)鍵信息進行處理和分析,或者將機器人獲取到的數(shù)據(jù)存儲到文件中,形成一個數(shù)據(jù)日志,方便后續(xù)分析和應用。這些案例可以根據(jù)具體課程的進度和教學重點進行選取和安排。通過這樣的案例實踐,學生可以將Python編程與機器人工程相結(jié)合,加深對所學知識的理解和應用,培養(yǎng)解決問題和創(chuàng)新的能力。
2.2"課程方法的改進
(1)采取混合式教學方法。在課堂上,教師可以引入更多互動和參與式教學活動,如小組討論、問題解決和項目實踐,激發(fā)學生的學習興趣和主動性。加強實踐環(huán)節(jié),提供更多的編程實踐機會和項目實踐任務(wù),使學生能夠?qū)⑺鶎W知識應用到實際項目中。同時,鼓勵學生積極提問和交流,打破師生權(quán)威關(guān)系,激發(fā)學生的學習動力和創(chuàng)造力。借助現(xiàn)代科技手段,如在線學習平臺和虛擬實驗室,提供豐富的學習資源和互動學習的機會。通過這些改進措施,可以更好地培養(yǎng)學生的自主學習能力和實踐應用能力。學生將在實踐中不斷豐富知識庫,逐步掌握并了解代碼的意圖?;旌鲜浇虒W方法能夠促進理論知識與實踐的結(jié)合,激發(fā)學生的學習熱情,提高他們在程序設(shè)計領(lǐng)域的成果。
項目化驅(qū)動教學。在學生學完基礎(chǔ)知識后,針對較難和不易掌握的知識點,設(shè)計相應的綜合性項目,提高學生的編程實踐能力,讓學生學以致用、融會貫通。例如,讓學生使用tkinter模塊實現(xiàn)一個學生信息管理系統(tǒng)。該系統(tǒng)可以通過用戶界面實現(xiàn)學生信息的添加、查找、刪除和顯示功能。這個項目將給學生提供一個實際的應用場景,讓他們在項目中運用所學的知識,加深對Python編程和GUI界面設(shè)計的理解。
在編譯學生信息管理系統(tǒng)的過程中,首先需要導入所需的模塊,如time和tkinter。然后,定義了用于存儲學生信息的全局變量Info,并且編寫了多個方法,用于實現(xiàn)添加、刪除、修改、查找等功能。這些方法包括對輸入進行檢查、讀取和寫入文件、計算字符串長度等操作。接下來,通過tkinter模塊創(chuàng)建了一個主窗口,并在主窗口上添加了按鈕和標簽等元素。定義了按鈕的事件處理函數(shù),如顯示學生信息、查詢學生信息、添加學生信息等。同時,還定義了多個用于提示用戶的函數(shù)。在主函數(shù)中,首先嘗試從文件中讀取學生信息,并將其存入Info列表。然后,創(chuàng)建主窗口,設(shè)置窗口的標題、圖標和尺寸,并顯示當前時間的標簽。最后,進入主窗口的事件循環(huán),使窗口持續(xù)顯示,等待用戶的操作。
這個編譯過程中使用到了Python的模塊導入、全局變量的定義、方法的調(diào)用、GUI界面的創(chuàng)建以及事件處理等知識點。通過這個項目,學生可以綜合運用所學的知識,提高編程實踐能力,并理解和應用Python編程和GUI界面設(shè)計的相關(guān)概念和技術(shù)。
(2)以賽促教。以比賽促進學習是一種非常有效的方式,可以激發(fā)學生的積極性和競爭意識,同時提高他們的編程能力和解決問題的能力。參加Python程序設(shè)計相關(guān)比賽可以給學生提供一個實戰(zhàn)機會,讓他們在實際項目中應用所學知識,鍛煉自己的編程技能。
2.3"課程考核的改進
為了提高學生的實踐能力,更改原先的課程考核方式,最終的課程考核由3部分組成:平時成績(占總成績的10%)、實驗成績(占總成績的40%)和期末成績(占總成績的50%)。如果學生參加Python類的比賽獲獎,會獲得適當?shù)募臃?。這種考核方式提高了實驗成績的占比,更加注重學生的日常實踐操作,并鼓勵學生參加比賽提高學生的程序設(shè)計能力。
3"結(jié)論
本文通過對“Python程序設(shè)計”的課程內(nèi)容、課程方法和課程考核3方面進行分析,指出存在的問題,對這些問題進行了積極探索與實踐,實現(xiàn)教學回歸實踐,通過實踐掌握Python編程語言,為應用型本科院校的機器人專業(yè)的課程內(nèi)容建設(shè)提供了一種思路,更好地培養(yǎng)學生的編程能力和創(chuàng)新意識。
參考文獻
[1]曹錦梅.非計算機專業(yè)Python程序設(shè)計教學模式改革實踐探究[J].電腦知識與技術(shù),2023,19(13):127129.
[2]李橋,彭漢森.新工科背景下“Python語言程序設(shè)計”教學改革研究與實踐[J].產(chǎn)業(yè)科技創(chuàng)新,2022,4(04):3941.
[3]周敏.通識課程《Python語言程序設(shè)計》混合式教學改革探究[J].電腦知識與技術(shù),2022,18(30):175177.
[4]王玉,范冬林,姜建武.Python程序設(shè)計課程教學改革與實踐[J].科技風,2022(34):9597.
[5]周旭.混合式教學模式下的“Python程序設(shè)計基礎(chǔ)”課程教學改革探索[J].教育教學論壇,2023(18):4952.
[6]冀全朋,嚴海升.Python程序設(shè)計課程教學改革與實踐——基于項目教學模式[J].西南師范大學學報(自然科學版),2021,46(11):9095.