封春年
摘要:中職計算機應用專業開設《Python程序編寫入門》課程具有重要意義,針對當前中職編程教學中存在的問題,可以通過調整教學內容激發興趣、開展分層教學因材施教、提倡舉一反三促進發展、推行混合教學提高效率和融入思政內容培根鑄魂等五方面開展教學,進而有效地培養學生的邏輯思維能力和提高解決實際問題的能力。
關鍵詞:Python;中職;計算機;教學改革
中圖分類號:G642? ? ? 文獻標識碼:A
文章編號:1009-3044(2021)34-0236-03
1 引言
當前,人工智能是新一輪產業變革的核心驅動力。我國把人工智能的技術進步與產業發展上升為國家戰略,據《新一代人工智能發展規劃》,我國計劃到2030年成為世界主要的人工智能創新中心。因此,職業院校要緊跟人工智能發展要求,加快培養適應人工智能產業需求的各類人才,積極應對人工智能時代對高技術技能人才培養的挑戰。
Python號稱是最接近人工智能的語言,因為它的動態便捷性和靈活的第三方擴展,成就了它在人工智能領域的豐碑。Python是一種代表極簡主義思想的語言,它的代碼追求簡潔,從而大大簡化了開發過程,非常適合初學者入門。
自2018年以來,我國的浙江、重慶等地將Python作為計算機編程語言教學內容納入新版高中信息技術教材,全國計算機等級考試也新增了“Python”的二級考試科目。
我校緊跟時代潮流,改用Python語言進行程序編寫入門教學。本文結合Python程序編寫入門的教學實踐和課程改革,就提高學生的邏輯推理能力和動手解決問題的能力,談一些關于中職程序編寫入門課程教學的經驗和體會。
2 開設Python程序編寫入門教學的重要意義
編程,是人類與計算機進行深入對話的一種方式。人們通過編寫程序來告訴計算機如何執行人類的命令,解決具體問題。同時,它也能有效地培養人的邏輯思維能力和創新創造能力,有助于提高解決問題的能力。盡管編寫程序具有一定的挑戰性,但是當計算機明白我們給它的指令,運行得出我們希望的結果時,心中的成就感會令我們忘卻曾經的曲折。所以,編寫程序,其實還是挺有趣的!
隨著信息技術與人們生活、工作的深度融合,掌握一定的程序編寫知識不僅是從事信息技術行業的基本要求,也是信息時代每一個公民形成“計算思維”的必經之路。因此,對于職業院校信息技術類專業的學生來說,非常有必要學習編程。
相較于行業內通常采用的各類程序語言,Python作為初學者學習程序編寫的語言主要基于以下幾點原因:Python是目前最流行的編程語言之一,已經被廣泛應用于統計分析、移動終端開發、人工智能等眾多專業和領域,具有廣泛的適用性,是一種“膠水”語言;相對于其他語言來說,Python語法簡潔清晰,便于維護,易于理解和學習;擁有大量功能強大的內置對象、標準庫,使原本需要編寫大量代碼才能實現的功能,在Python中變得簡便高效,具有很強的便捷性。
中職生抽象能力比較欠缺,英語基礎比較薄弱,這是程序編寫入門課程的老大難問題。中職程序編寫入門課程的目標是培養學生的邏輯思維和提高解決問題的能力。如何使得學生在學習計算機編程的過程中充滿樂趣,一直是我們在思考的問題。
3 當前Python程序編寫入門教學的存在問題
3.1 知識點多,趣味性低
Python程序編寫入門課程上涉及的知識點比較多,有些內容對于中職學生來說相當的枯燥,學生提不起學習的興趣。
3.2 技巧點難,實用性差
Python程序編寫入門課程的技巧的難點主要集中在邏輯算法上,中職生的邏輯思維比較差,不能夠理解程序編寫的邏輯需求,同時有些教學內容非常抽象,學生在學習的過程中感受不到編程的樂趣和實用。
4 破解Python程序編寫入門教學的主要對策
4.1? 調整教學內容,激發學生興趣
對于中職學生來說,面對枯燥的代碼和抽象的思維,學生的第一印象就是Python程序編寫入門這門課程太難了,自己也沒有信心堅持學下去。如何避免這種一入門就想放棄的現象出現?最關鍵的因素就是教師要本著簡易直觀的原則,讓學生有想學Python的興趣和沖動。首先是編程的軟件要簡易直觀,在教學中,我們選擇了深圳編程貓公司開發推出的海龜編輯器作為Python程序編寫入門教學專用軟件,它界面友好,是青少年喜歡的卡通風格,可以讓學生以搭積木的方式來學習Python,提高學生的學習興趣,降低學習難度,同時它的擴展功能強大,支持硬件編程,可以一鍵安裝第三方庫,避免在學習Python之前的一些繁雜操作。
其次是調整教學內容。Python程序編寫入門的教學內容可分為基礎、進階和提高三個部分,建議學時為80學時。基礎部分主要是學習編程的規范、基礎語法及基本語句;進階部分主要是鞏固基礎,掌握模塊函數;提高部分主要是第三方庫的使用。從我們的教學實踐來看,這三部分的課時比例為5:4:1比較合適。
同時,教學內容也沒有必要一定是從基礎講起,再到進階,然后到提高。實際上對于中職生來說,激發學生學習Python編程的興趣才是最重要的。因此,我們可以先講基礎的輸出和輸入語句,讓學生對Python有一個初步的認識,接著可以講利用turtle模塊函數來畫一些有趣的圖形,在這個圖形繪制的過程中,再穿插回到順序、選擇、循環三類常用的基本語句學習。通過適當的調整教學內容,控制好教學的節奏,讓學生在學習的過程中始終保持著良好的興趣至關重要。
另外,在教學過程中,我們還要本著量力而為的原則,結合中職學生的實際學情,有的放矢,合理地選擇一些內容進行教學。Python程序編寫入門課程最主要還是要先激發學生去學習編程的興趣,讓學生打好一個堅實的基礎,能有助于其“計算思維”的建立,為其后續發展做好鋪墊。因此,我們建議選取較為基礎的內容,如代碼編寫及命名規范,字符串、列表、選擇與循環結構等,而類似于面向對象、復雜的正則表達式、第三方庫函數的內容等,可以讓學有余力的學生進行選學。
比如在講授“身份證信息識別”案例時,通過Python編寫一個小程序來識別身份證中的出生年月、年齡和對應生肖。真正的身份證校驗,要判斷用戶輸入的身份證是否有效?方方面面去考慮的話,對初學者來說是有些困難的,我們對學生一般只要求先掌握字符串長度函數len()的使用,然后能夠正確使用if判斷語句保證用戶輸入的身份證位數是18位;學有余力的學生可以引導他們利用正則表達式來進行簡單的字符串匹配,前17位必須是0-9的數字,最后一位是0-9或大小寫的X。
4.2 開展分層教學,貫徹因材施教
中職學生的學習能力水平可以說是參差不齊,同一個教學內容的同一個案例,班上的學生完成的進度并不一致,少部分學生甚至連基本的鍵盤輸入都成問題,因此,在Python程序編寫入門的教學中非常有必要開展分層教學,通過有層次的教學,讓每一位學生都能學有所獲,保持對程序編寫的興趣和激情,最終達到因材施教的目的。
實際教學中的每一次課,我們都安排了基礎、進階、提高三個層次的案例,各個層次要形成一定的梯度。針對少部分學習吃力的學生只需要完成基礎案例就行,而學有余力的學生可以完成提高層次的案例。作為任課教師,我們的教學中要保證讓大部分的學生在完成基礎案例后達到進階層次的程度。通過這樣的分層教學,讓學生能夠根據自身實際的學習情況進行合理的調整,進而學有所成。
Python程序編寫入門教學的實操性還是很強的,在教學中,我們要盡量結合生活實際來選取案例,讓學生運用所學知識來解決實際問題。比如,本文提到的身份證信息識別和石頭剪刀布游戲,都是學生在平常中能感受到的生活實例。
在程序編寫入門的教學中,學困生一直是我們關注的焦點。實踐教學中,我們發現,除了教學內容的分層次之外,教學的形式上也可以進行分層次。我們可以采用分組學習的形式進行教學,每組設一名組長,組員要求實力均勻搭配,鼓勵組員間互幫互助,從而有效地避免學困生被孤立起來。
在教學中建議采用任務驅動教學法,以提出問題、分析問題、解決問題為教學思路。在教學任務的選擇上要始終貫穿一個“趣”字,在知識點的講解上要突出“細”字、在編程教學的過程中要突出“動”字、在學生分組任務練習上要突出“實”字,通過這樣循序漸進的教學來幫助學生突破教學重難點,讓學生扎扎實實地掌握Python程序編寫。
4.3 提倡舉一反三,促進個性發展
創新思維的培養一直是教育的痛點和難點,如何鼓勵中職學生積極地去思考?有效地解決問題?讓學生在解決實際問題中能夠探索不同的方式和方法,考驗著我們教師的教學能力水平。
Python程序編寫入門的教學不僅要強調基礎,還要注意學生發散思維的培養。教學中,我們要經常支持和鼓勵學生深入思考問題,積極探索不同的解決問題的方式和方法,也只有通過這樣讓學生不斷地上機嘗試驗證,學生的分析和解決問題的能力才能夠得到切切實實的提高。
比如在講授“石頭剪刀布”案例時,主要是先使用隨機函數randint()產生隨機數0、1、2,分別對應“石頭剪刀布”,接著使用if-elif-else多分支選擇語句來對用戶輸入的結果進行比較,從而判斷出勝負。但是這樣,程序只能玩一次。我們可以引導學生學習掌握while循環語句,增加玩游戲的次數,再進一步引導學生統計三局兩勝或五局三勝的結果決定最終的勝負。像這樣讓學生從一個簡單的例子入手,不斷的提出新的需求,進而修改和完善程序,會讓學生的學習獲得感得到極大的增強。
對于程序編寫入門教學,舉一反三最大的障礙是代碼的編寫,對中職生現有水平來說實在是太難了。本門課,我們使用編程貓的海龜編輯器作為教學專用軟件,可以讓學生以搭積木的方式來學習Python,降低代碼編寫的學習難度,也有利于學生舉一反三的創造力培養。比如我們在講授Turtle模塊的圖形繪制時,學生通過合理地拖拉對應的積木模塊來搭建,就可以實現各種圖形效果的繪制,學生的學習興趣一下子就上來了,相對于講解具體的代碼,教學效果要好得多,后期再逐漸過渡引導學生理解對應的Python代碼,加深對知識點學習的理解。
4.4 推行混合教學,提高課堂效率
混合式教學一方面拓展了學生學習的時間和空間,另一方面對于學生的線下學生也起到了提質培優的作用。
我們利用超星的學習平臺開展線上線下教學,通過搭建網上的課堂,形成系列的教學資源,整個教學涵蓋了課前導學、課中探知、課后擴展三個方面,極大地提高了課堂效率。例如學生加入超星學習通的班級后,可以利用手機進行課前準備,對所學的知識進行預習;上課的時候,我們結合學生的預習情況進行一個快速的評價,合理地調整教學內容,通過提問,投票、小組PK、測驗、討論、頭腦風暴等方法開展教學活動;課后,學生可以利用平臺推送的學習資源,進行復習鞏固和教學評價。
在剛開始推行混合式教學時,學生對新鮮事物充滿好奇,會很配合。但是時間久一點,學生的積極性就會下降,這就迫切需要教師及時根據學生的學情做出適當的調整,我們可以通過設置一些獎勵措施等方法來對學生的課程學習進行正向的激勵。
4.5 融入思政內容,做到培根鑄魂
立德樹人是教育的根本任務,國家大力提倡要在專業教學中注意挖掘專業知識體系本身所蘊含的思想政治教育元素,有效融入專業教學,提升學生的專業認同度、職業精神和社會責任感,引導學生樹立正確的人生觀和價值觀,最終激發學生的內生學習動力,做到培根鑄魂,啟智潤心。
比如在講授基本數據類型時,我們可以提出這樣的問題:每天進步或退步0.001,一年后會進步或退步多少?然后引導學生使用pow函數來進行計算,通過對比運算結果,讓學生明白這樣的道理:只要我們每天有一點點進步,自己的人生就會與眾不同。
我們也可以選擇一些有思想教育意義的案例來讓學生完成,讓教學入心入腦。例如在學習pygame模塊的應用時,可以做一個關于“垃圾分類,從我做起”的簡單桌面游戲,通過這個項目實戰,提升學生的環保意識,同時增強專業技能的學習,一箭雙雕。
5 結束語
開設Python程序編寫入門教學課程的主要目的是培養學生的邏輯思維和提高解決問題的能力。在教學中,最重要的是讓學生在學習計算機編程的過程中體驗到樂趣,除了運用以上五個對策外,積極引導學生畫流程圖,用自然語言描述編程的思路也是非常重要的。學生對編程的邏輯思路清晰后,再進行不斷地上機調試才能較好地掌握相關知識,畢竟,編程是具有很強的實踐性的。通過這樣,把“學”和“練”進行整合,讓學生的學習從循序漸進到知行合一,從而達到Python程序編寫入門的最終教學目標。
參考文獻:
[1] 姜忠圓.中職Python語言教學方法初探[J].職業教育(中旬刊),2019,18(7):63-65.
[2] 余久方.高職院校python語言教學模式探索[J].職業教育研究,2019(11):70-74.
【通聯編輯:光文玲】