魯月林 汪爽 史晨陽 劉永明 趙轉哲 劉志博
摘??要:Python語言程序設計是智能科學與技術專業的編程基礎課程,對該專業后續實踐課程的實施具有重要作用。為了提升Python課程的質量,從專業對人才素質的需求角度出發,對Python課程教學提出了改進措施,包括提升教師編程技能與課程理解、建立層次分明的課堂教學體系、構建以學生為中心的實踐教學體系以及建立Python課程與學科競賽的鏈接。通過課程的不斷改進,最終實現了課程教學質量的提升。
關鍵詞:Python?語言;智能科學與技術;教學方案;實踐能力
1概述
智能科學與技術專業是契合人工智能時代人才能力需求的專業,該專業融合了人工智能、計算機、控制、傳感、通訊等眾多學科領域[1-2],學生就業主要面向信息技術、先進制造類企事業單位。安徽工程大學人工智能學院為了應對社會與企業對信息化、智能化人才的需求,積極培養學生通過編程解決實際問題的能力。由于Python語言具有簡單易懂、易于學習,以及包含豐富的第三方庫和工具[1]特點,被廣泛應用于各種領域,如Web開發、數據科學、人工智能和機器學習等[3-4]。智能科學與技術專業在低年級開設《Python語言程序設計》課程,該課程的先修課有《C語言程序設計》、《計算機基礎》等,其教學內容主要包括基礎語法、庫的使用、面向對象基礎知識等。學生在Python課程中所掌握的編程技能是該專業后續課程如《機器學習》、《自然語言處理》、《ROS機器人開發》等課程的基礎,也是學生畢業后從事相關工作的重要技能。通過Python語言的學習和訓練,可以有效提升智能科學與技術專業學生的計算思維、算法思維和以及解決工程問題的能力[5-6]。
本課程除了要求學生熟練使用Python以外,還要求學生對程序設計有一定理解,為以后更深入的學習和實踐打下基礎,支撐專業學習成果中相應指標點的達成。預期達到的課程目標包括如下3個方面。(1)知識目標:掌握python語言的基本語法,模塊化設計方法;(2)?能力目標:熟練使用python進行編程;(3)育人目標:培養學生認知負責、踏實敬業的工作態度和嚴謹求實、一絲不茍的工作作風,以及嚴格遵守各種標準規定的習慣和良好的行為習慣。安徽工程大學人工智能學院在開設Python語言程序設計課程過程中,發現了存在一些亟需克服的問題。
2?Python課程存在的問題
1.教師實踐經驗缺乏
大多數Python課程的教師僅有C語言或Matlab的教學與開發經歷。C語言教學重點在于教會學生基本語法以及基本的程序設計邏輯結構。而Python語言作為一種高級解釋性語言,其教學中更需側重Python語言的應用。由于兩種語言存在差異,如果教師不系統性地學習與實踐Python語言的具體應用,難以應對教學要求以及學生對深入學習Python課程的需求。
2.學生計算機與編程基礎薄弱
一些學生對C語言、數據結構等相關的基礎支撐課程掌握不牢固,且自身編程思維的構建不夠完善。在學習Python編程時,容易將多種語言混淆,面對編程項目無法入手。一部分學生對計算機的基礎知識和操作掌握不足,甚至存在學生無法正確安裝Python語言解釋器及相關集成開發環境的情況。
3.實踐環節綜合性有待加強
目前安徽工程大學智能科學與技術專業的Python語言程序設計課程總學時為48學時,其中理論課時32學時,實驗課時16學時,實驗課程穿插在理論學時之中,每次實驗為結束一個章節后,對本章知識點的實踐訓練。可以看出,目前該課程的實踐教學一直僅是理論知識的鞏固與延伸,無法綜合性地培養學生的編程能力與編程思維,也無法實施更接近真實案例的編程訓練,在能力培養上與社會與企業的實際需求之間存在一定的差距。
3?Python課程教學改進措施
1.提升教師編程技能與課程理解
鼓勵教師參加行業研討會和培訓課程,以保持與最新技術趨勢的接軌。要求Python課程教師進入各行業調研Python應用實際需求,關注最新的技術和趨勢,不斷更新和優化實踐項目內容,以滿足社會對學生的技能需求。同時,邀請計算機行業從業專家進入校園,進入課堂給教師的課程做指導,也為學生講解工程應用的編程思路。
2.建立層次分明的課堂教學體系
《Python語言程序設計》課程不是一門純理論課程,該課程需要學生能夠將所學知識應用到編程實踐中,并且能夠融合其他課程所學專業知識,構建實際工程項目。因此該課程的教學知識體系應該具有層次性、引導性和實踐性,由Python的基礎語法入手,培養學生的編程能力,使學生建立編程自信心。再通過一些案例逐漸引導出高階語法,最后教授學生使用常用的第三方庫以及進行項目實踐。因此整個課程體系為:1.Python編程基礎語法,包括Python語言基礎、控制流程、函數等基礎概念和語法。2.?Python編程高階語法,包括列表、字典、面向對象編程等內容。3.常用Python第三方庫包括NumPy、Pandas、Matplotlib等數據科學和數據可視化庫的使用。
3.構建以學生為中心的實踐教學體系
Python語言程序設計課程教學內容設置應該充分考慮學生的編程能力,設計一些生動有趣、具有實操性的編程項目,將理論知識和實踐相結合,讓學生通過實際編程和項目開發來提高他們的編程水平和解決問題的能力。在Python實踐教學環節,要真正貫徹以學生為中心的理念。教師給予學生所需的基礎資料、文檔和指南,項目的具體實施由學生用用所學知識,自行完成。學生在遇到問題的過程中,教師給予指示性幫助,堅決杜絕類似于直接給答案或者是由教師上手,學生旁觀的情況發生。
除了布置單獨完成的項目以外,實踐課程后期還布置一些工程量大、需要多認合作的項目,讓學生一起合作完成,以便他們了解團隊合作的重要性。學生在多人協同編程過程中,可以熟悉程序的版本控制、任務分配、代碼審查等實際工程項目所需要的流程。教師在這過程中需要實時了解他們的進展、成功和需要改進的地方。表1為Python項目實踐教學中的一些案例,圖1為猜數字游戲編程中,學生使用Python語言及PyQT庫所完成的可視化界面。
總之,Python課程教學應該注重理論和實踐相結合,讓學生掌握Python編程的基礎知識和技能,并能夠應用到各種領域和場景中去。需要注重學生的參與度和自主性,使學生能夠在實踐中學習并取得進展,同時也需要教師提供指導和反饋,幫助學生理解和應用所學知識,提高學生看問題的全局性、面對問題時的創新性等。
4.建立Python課程與學科競賽的鏈接
大學階段的學科競賽是培養高素質應用型、研究型人才的重要路徑,學生可以在學科競賽中開闊自己的視野,增加對學科的認識,提升實踐能力,有助于在找工作、考研復試中脫穎而出。大多數學科競賽需要學生綜合多學科知識,分析問題,通過實際動手完成競賽任務。Python在數據科學、機器學習和人工智能領域中具有廣泛應用,許多涉及到數據分析或機器學習任務的競賽必須要使用Python才能完成任務。智能科學與技術專業學生可以參加的競賽,如“中國機器人與人工智能競賽”“全國高校計算機能力挑戰賽”等均需要學生進行Python編程。
教師在Python課程中,應該有意地向學生介紹這些與課程相關的比賽,鼓勵學有余力、對比賽有興趣的同學積極參與學科競賽。在Python課程中引入數據分析、機器學習建模、深度學習建模等競賽中常用的知識點,分享與競賽相關的在線資源、書籍和工具,幫助學生深入學習和準備。
結語
經過為期一年的Python課程改進,該課程的教學效果有了明顯提升。首先,學生積極性得到了增強,表現為課堂出勤率、在線討論參與率提升。通過對比前后幾個學期的期末成績與計算機二級的Python科目通過率,發現成績和通過率均有所提升。同時學生將課程所學知識積極應用于學科競賽與實習工作中。該專業學生在“中國機器人與人工智能大賽”、“安徽省大數據與人工智能競賽”、“全國大學生電子設計競賽”“藍橋杯程序設計大賽”等競賽中榮獲佳績,?累計獲得一等獎?3次,?二等獎?7?次,?三等獎?9?次。在學生實習過程中,用人單位對這些參加了競賽的學生也給予了更高的評價,認為他們能夠更加適應企業的工作。可見,通過教師在Python課程教學中的不斷改進該,課程對學生的培養結果實現了預期的知識目標、能力目標和育人目標。
參考文獻:
[1]肖凱,李雯,湯曉安,等.智能科學與技術應用型本科人才培養模式研究[J].電腦知識與技術,2020,16(25):153-155.
[2]陳義明,劉桂波,張林峰,等.智能科學與技術專業特色方向的確立與課程體系構建[J].計算機教育,2020(07):162-165.
[3]沈乾彥,趙海峰.Python語言課程教學改革探討[J].計算機教育,2021(03):171-174.
[4]韓志豪.人工智能背景下的Python教學探索[J].計算機時代,2018(07):76-81.
[5]嵩天,黃天羽,禮欣.Python語言:程序設計課程教學改革的理想選擇[J].中國大學教學,2016(02):42-47.
[6]劉承林.計算思維培養視角下高中Python課程教學模式研究[D].山東師范大學,2019.
基金項目:安徽工程大學引進人才科研啟動基金項目(2020YQQ030);安徽工程大學校級科研項目(Xjky2020010);2022年安徽省省級示范實驗實訓中心項目(2022sysx001);2022年安徽工程大學人工智能優勢專業項目(2022yszy03)
作者簡介:魯月林(1992—?),男,漢族,安徽銅陵人,博士研究生,講師,研究方向:光電信息處理、計算機視覺、智能傳感。