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