摘 要:Python是一個高層次的腳本語言,其整體設計具有很強的可讀性,也被稱為解釋型語言、交互式語言、面向對象語言及初學者語言。目前高中信息技術教學中也開始進行Python教學,在此教學中培養學生的計算思維具有明顯優勢,這與Python語言簡潔靈活、多以項目式驅動等教學方法實踐以及其本身的互動性和融合性特點有關。鑒于此,圍繞計算思維及高中Python教學中培養學生計算思維的優勢展開探究,進一步探究高中Python教學中學生計算思維的培養策略,以期望為教師教學提供可用參考。
關鍵詞:高中信息技術;Python教學;計算思維
作者簡介:朱鵬(1978—),男,江蘇省徐州市睢寧縣王集中學。
計算思維是一種思維方式,是信息技術學科核心素養的重要組成部分,具有較強的計算思維也是學生學好信息技術學科知識的前提。在高中Python教學中培養學生的計算思維,一方面可以借助Python編程語言的優勢特點促進學生形成計算思維,另一方面可以借助學生已有的抽象思維經驗和能力助力學生計算思維發展。
一、計算思維概述
計算思維是在問題求解過程中運用計算機科學基礎概念解決問題的一系列思維活動。在計算思維培養過程中會涉及問題分解、模式識別、抽象、算法設計四個核心概念。其中,在問題分解環節,需要將一個復雜的大問題,逐一分解為若干個較小的、更容易思考和管理的子問題,在解決子問題過程中學生可以逐步建立起問題思維,最終在解決大問題時形成良好的計算思維。在模式識別環節,需要在問題中尋找重復出現的規律,在識別模式下利用已有的解題方案或者算法解決相似問題,提高問題解決效率。在抽象環節,需要忽略問題的非關鍵細節,只關注關鍵信息,從而更好地理解和解決問題,抽象思維是計算思維的重要組成部分,可以幫助學生建立問題模型,讓問題更加直觀、易懂、明了。在算法設計環節,需要設計一系列有序的步驟來解決問題,算法是計算思維的核心部分,可以保障問題以一種有效的方式解決。計算思維的有效培養,可以提高學生的問題解決能力,促進學生創新能力的發展,有助于學生跨學科應用知識,更好地適應未來社會。
二、高中Python教學中培養學生計算思維的優勢
在高中Python教學中培養學生的計算思維具有顯著優勢。首先,Python語言簡潔靈活,可以在教學過程中引導學生將一個復雜的大問題,逐步分解為一個個小的子問題,接著學生可像搭積木一樣,將每個子問題當作一塊塊積木有序搭建,最終成功搭成一整個積木模型時就能解決此問題。其次,Python擁有豐富的內置函數和庫,學生可以通過學習和使用排序算法、搜索算法等各種算法解決實際問題,培養問題解決能力。再次,高中Python教學大多以項目驅動教學、問題導向學習以及小組合作探究等教學方式展開,學生可以在實踐運用中進行計算思維的鍛煉和創新,盡情地發揮自己的想象力與創造力。此外,Python擁有龐大的開源社區,學生可以在社區中查看他人上傳的代碼和項目,進而獲得更多的創新靈感與啟發,最終培養形成良好的計算思維。最后,Python是一種互動性很強的編程語言,其可以與數學、物理等多門學科融合,從而幫助學生解決學科問題,提高Python應用能力的同時發展計算思維。從某種層面來看,計算思維是一種通用的思維方式,其不僅在編程中被廣泛應用,在日常生活中解決實際問題、在數學學習中的抽象計算等都有應用,因此學習Python語言,實際上是擁有了一把萬能鑰匙,可以打開不同領域的知識大門,順利拓展計算思維。
三、高中Python教學中學生計算思維的培養策略
(一)項目驅動教學
在高中Python教學中培養學生的計算思維時,實施項目驅動教學,目的是通過設計具有實際意義的項目,讓學生在實際問題解決過程中學會運用Python編程,鍛煉學生問題分解、抽象分析以及算法設計等計算思維。在設計項目時,教師應依據學生的興趣及實際學情設計難度適中的項目,以保障學生都能在項目完成過程中收獲知識和技能,順利發展計算思維。
例如,在Python教學中,教師設計“校園活動投票平臺”項目,此項目與學生現實生活相關,可以有效激發學生參與和完成項目的興趣。在項目開始前,教師帶領學生對項目進行問題分析和分解,使學生明白此項目需要解決的是學?;顒油镀苯Y果的統計問題,于是學生可在教師的指引下將項目分解為用戶登錄、活動展示、投票操作、結果統計等幾個子問題。此后,教師要求學生對每個子問題的具體情況做詳細的分析,確定使用哪些編程語言和技術[1]。完成問題分析與分解后,教師指導學生進行此項目的算法設計與實現探索。在算法設計環節,學生需要將實際問題轉化為計算機可以處理的問題,即將學生的投票結果使用字典數據存儲,使用冒泡排序算法統計學生的投票票數,得到投票結果排序。在算法實現完成進入代碼調試與優化環節后,教師可指導學生以最優化思維思考當前的代碼使用情況,將重復代碼去除,將復雜的代碼用簡單的代碼替換,實現代碼的可讀性與可維護性。最后,教師要求學生展示項目成果,并對學生的項目成果進行個性化指導,促使學生反思整個項目完成過程及用到的算法知識,最終培養鍛煉學生的計算思維。
(二)問題導向學習
在高中Python教學中培養學生的計算思維時,教師可以實施問題導向學習法,通過提出各種實際問題引導學生思考問題解決的方法,向學生介紹Python的具體用法和應用優勢,并在此過程中有效培養學生的計算思維[2]。在具體的問題設計中,教師應基于學生學情設計難度適中的問題,再基于Python的使用特點進行多學科知識問題設計。
例如,在Python教學中,教師提出:“如何使用Python計算出兩地之間的距離?”在解決此問題時,學生需要思考兩個問題:第一個問題是如何將此實際問題轉化為抽象的數學模型;第二個問題是如何以Python編程實現算法,求出兩地間的距離。當學生找到兩個問題的答案時,其抽象思維、邏輯思維、算法思維等均將得到有效鍛煉。在具體教學中,教師可向學生展示相關地圖,提出問題:“我們已經知曉兩個地點的經度和緯度,如何使用Python計算出這兩個位置間的距離?”學生應用數學思維開始分析問題:①已知條件為兩個地點的經度和緯度;②求解問題是兩地之間的直線距離;③可能涉及的知識點是球面幾何及三角函數知識等;④應思考經度和緯度如何轉化為可計算的數學形式。確定問題后,學生開始進行抽象思考,建立數學問題模型,接著基于數學問題模型設計計算兩地距離的算法步驟,最后應用Python編程框架填寫代碼,計算出具體的距離。在問題導向學習過程中,學生的關注點先放在問題的分析與分解上,接著進行數學的抽象思考,此后進行算法分析,最后是應用Python編寫計算兩地距離的代碼,整個解題過程學生思路清晰,思維邏輯順暢,計算思維隨之培養形成。
(三)小組合作探究
在高中Python教學中培養學生的計算思維時,教師可以組織學生合作探究,學生在團隊合作過程中互動交流溝通,尋找問題的解決思路和辦法,最終能在合作解決問題過程中培養團隊協作能力和溝通交流能力,成功發展計算思維。在小組合作中,學生需要分工合作,即有的學生負責問題分析,有的學生負責算法設計,還有的學生負責代碼實現與測試等,最后合作分享自己負責的內容,此時學生將通過分享學習到他人的思維方式,激活問題解決方法思路,實現計算思維的培養與發展[3]。
例如,在Python教學中,教師充分考慮班級學生在Python編程語言學習時的基礎,學習能力以及在實際問題解決中表現出的能力等因素,遵循“組間同質,組內異質”原則,將學生合理劃分為若干小組,每個小組學生人數在4—6人,此后向學生布置合作任務,如“開發一個簡單的小游戲”任務,此時學生在小組內合作分工,有的學生負責游戲的界面設計,有的學生負責編程和測試等。在合作分工中,組內學生均有各自負責的任務,但任務之間又緊密聯系,因此,學生在小組內需要進行必要的溝通交流,如開發游戲界面的學生提出問題:“我們開發的小游戲屬于益智類,那么界面應以抽象為主,還是以趣味為主?”在討論中,學生確定抽象的游戲界面,讓整個小游戲體現出神秘感。在編程環節,學生遇到的問題更多,如“小游戲的關卡難度如何?”“小游戲應設幾個關卡?”“如何將難度體現在游戲的各個環節中?”等。學生在解決以上問題的過程中有效合作,溝通交流,邏輯思維與問題解決思維會異常活躍,最終順利培養、提高計算思維。
(四)編程競賽活動
在高中Python教學中培養學生的計算思維時,教師可以定期舉辦Python編程競賽活動,通過競賽的競技特點激發學生的競爭意識,促進學生思維發展,成功培養發展其計算思維。為鼓勵所有的學生都積極參與到編程競賽活動中,教師可以設置不同難度的層級挑戰競賽,學生按照自己的能力選擇適合的編程任務完成,最后依據編程任務難度級別及完成的時間、完成的效果等評估,給出最終得分[4]。例如,教師在Python階段性教學結束后,可以組織開展高、中、低三個層級的編程競賽活動,要求所有學生參加此項活動。在競賽前,教師組織學生復習鞏固Python編程的數據類型、控制結構、模塊及函數等基礎知識,并對學生進行問題分解、抽象、算法設計以及編程調試等計算思維專項訓練,使學生熟練掌握Python編程。此后,教師對學生進行模擬競賽教學指導,使學生對編程競賽有一個較為系統的整體認知,為后續學生正式參加編程競賽活動奠定扎實基礎。在編程競賽活動正式開始后,以班級為單位,組織學生先進行低層級的編程競賽活動,接著進行中層級和高層級的競賽活動,學生將在層級性質的編程競賽活動中進行至少三次的問題分析、算法設計、調試程序等計算思維專項練習。比如在問題分析環節,學生需要完成的編程任務是:
求兩個數的最大公約數程序設計。此時學生需要將問題分解為計算機可以處理的問題,思考過程中,學生回憶最大公約數的定義和性質,確定編程所需的函數、結構,最終設計出求解兩個數最大公約數的編程。在高中階段開展編程競賽活動,既可以為學生提供編程實踐應用的機會和平臺,還能助力學生在具體的編程設計與實踐中經歷多次的計算思維訓練,這對學生計算思維的培養有積極促進作用。
(五)多元教學評價
在高中Python教學中培養學生的計算思維時,教師應采取多元化的評估方式,以形成性評價和總結性評價并重的評價方式評估學生在Python學習過程中的表現、學習效果以及在項目活動、編程競賽活動以及小組合作探究等活動中的學習表現和學習成果,并將評價結果反饋給學生[5]。
例如,在Python教學中,教師采取多元教學評價模式對學生在Python學習中的計算思維培養情況進行綜合評價。首先,評價主體應多元化,即不僅要有教師評價,還需有學生自評和學生互評,教師應評價學生在編程過程中的問題分析與分解、抽象、算法設計以及程序調試時的個體表現和學習成果;學生應評價自己在整個學習過程中的表現和不足;學生要在互評中知曉自己與他人在小組合作中的貢獻和表現,促進彼此之間互相學習和成長。其次,評價內容也應多元化,不僅要對學生的Python編程知識和技能掌握程度進行評價,還需對學生的問題分解和分析等計算思維的培養情況進行評價,如評價學生是否可以獨立將一個大的問題分解為若干子問題;學生是否可以將實際問題抽象為計算機可以處理的問題;學生是否可以設計出合理的算法解決問題;學生是否可以綜合運用所學知識優化程序,進行有效程序調試等。最后,評價方式也應多元化,要以形成性評價方式評價學生在整個Python編程學習過程中的表現和學習成果,如課堂表現、作業完成情況、競賽活動表現等。同時,教師應在Python教學結束后對學生進行總結性評價,基于項目任務完成的情況確定評價結果,最終明確學生計算思維發展水平。
四、總結
綜上所述,在高中Python教學中,教師可以通過項目驅動教學、問題導向學習、小組合作探究、編程競賽活動以及多元教學評價等策略的實施,為學生提供計算思維培養機會,促進學生邏輯思維、創新思維以及問題解決能力的提高。教師應持續探索Python教學中計算思維的培養策略,實現學生計算思維培養目標。
[參考文獻]
[1]王宗根.高中信息技術教學中學生計算思維的培養策略[J].高考,2024(11):93-95.
[2]黃志君.高中信息技術教學中學生計算思維的培養策略探討[J].成才,2024(7):70-72.
[3]韋天真.高中信息技術教學中學生計算思維的培養策略研究[J].名師在線,2024(5):88-90.
[4]鞏辰.高中信息技術教學中學生計算思維培養策略探究[J].中國多媒體與網絡教學學報(下旬刊),2023(12):157-159.
[5]王文靜,陳瀾.Python程序設計教學中學生計算思維培養策略:以編寫“猜數字”游戲為例[J].中國信息技術教育,2022(16):30-32.