王昕 齊金山


摘要:Python是高校工科非計算機專業學習的必修課程。課程思政是新時代背景下黨中央為了促進高校思想政治工作的一項新舉措。文章在此背景下通過建立Python教學內容中的字符串處理方法與大學生行為語言之間的融合關系,從而讓非計算機專業的工科學生一方面能夠用大學生日常行為語言通俗易懂地去理解字符串處理方法的內涵,進而激發學生對編程技術的興趣;另一方面借用字符串處理方法的機理及其云運行環境,去啟示大學生在大學之芳華的人生階段中,要讓自己成長為愛國、具有家國情懷、自律、積極進取、德智體美勞等全面發展的新時代青年人。將價值引領寓于知識傳授過程中,推進課程思政建設,提升育人實效。
關鍵詞:Python;課程思政;教學案例;教學方法;大學生行為語言
中圖分類號:G642 ? ? ? ?文獻標識碼:A
文章編號:1009-3044(2022)31-0152-03
1 問題的提出
Python語言簡單易學、功能強大,尤其在機器學習、大數據等方面的應用,使其成為非常受歡迎的編程語言之一[1]。Python語言的內容包含:Python 概述、Python 語言基礎、程序流程控制、函數和代碼復用、組合數據類型、文件和數據格式化、程序設計方法論、科學計算與可視化等(見圖1所示)。從圖1可知,Python語言需要掌握較多的編程語法規則等內容,這對于從來沒有接觸過編程的非計算機專業的工科學生而言,學習難度很大。尤其受學時的限制,學生最終只具備Python基本編程能力,未能進一步深入探討,也未真正發揮出該門語言功能強大的優勢[2]。
課程思政是新時代背景下黨中央加強高校思想政治工作的新要求[3]。2016 年12 月,習近平總書記在全國高校思想政治工作會議上強調: “高校思想政治工作關系高校培養什么樣的人、如何培養人以及為誰培養人這個根本問題。要堅持把立德樹人作為中心環節,把思想政治工作貫穿教育教學全過程,實現全程育人、全方位育人,努力開創我國高等教育事業發展新局面。”課程思政不是增開一門課也不是增設一項活動[4],而是要求所有課程的知識傳遞都體現出思想政治教育元素,所有教學活動都發揮出立德樹人的功能[5]。
在此背景下,筆者在教授Python這門課程的過程中,發現單純用專業性的術語去解釋所涉及的專業詞匯以及技術問題,非計算機專業的工科學生很難真正理解其含義。因此,本文研究通過一個教學案例即字符串處理方法——迭代與賦值共存之方法,把通俗易懂的學生行為規范語言融于相關問題的解釋中,不僅可以有效地提高教學效果,而且融合性的解釋語言所折射出的行為規范對學生應如何科學有效地度過大學四年美好之芳華時光也有著重要的啟示意義。把課程思政教育拓展到Python教學過程中,也是課程價值觀功能實現的一種有效形式和基本路徑[6]。
2 教學案例設計
教學案例的設計基本原則就是要向學生灌輸這樣一種思想:學習Python編程就是為了“用”。“用”是出發點也是立足點,設計教學案例時緊扣“用”,從而引起學生共鳴,激發學生編程興趣。本文以字符串處理方法——迭代與賦值共存之芳華的教學案例為例闡述了整個設計過程。
2.1 案例設計思路
教學案例所涉及的教學內容包括理解與熟練應用常用的字符串處理方法,如str.join(iter)、str.lower()、str.upper()、str.split(sep=None)、str.count(sub)、str.replace(old,new)、str.center(width,fillchar)、str.strip(chars)等方法。在進行有關教學活動設計時需要考慮Python編程如何“用”的問題,具體包括:首先,用通俗易懂的語言引入需要講解的常用字符串處理方法;其次,用專業術語與大學生行為特征語言分別解釋常用字符串的含義;第三,用具體常用字符串的案例,解釋如何使用常用字符串處理的方法,其采用的解釋語言為專業術語與大學生行為特征語言相互融合的語言;第四,用提問的形式讓學生回答相關問題,回答所采用的語言形式為上面所強調的語言形式;第五,對學生回答問題的情況進行相關評述與總結。具體考核評價指標有:學生能夠用專業術語理解常用字符串處理方法的含義;學生能夠用大學生行為語言形象地去理解常用字符串處理方法的含義;學生能夠熟練使用常用字符串處理方法;學生能夠在具體的編程中熟練使用字符串處理方法;學生能夠理解字符串處理方法規律與學生芳華人生階段所應有的行為規律之間的內在聯系及其意義。
2.2 案例教學過程
該案例教學過程主要涉及:導入需要講解的常用字符串處理方法及對應案例,如str.join(iter)與a=",".join("12345");用Python程序設計中所采用的專業性術語解釋常用字符串處理方法及案例的含義;借用大學生行為語言解釋常用字符串處理方法及案例的含義;用推演法,進一步分析字符串處理方法中所折射出的科學規律與人生芳華之階段行為規律之間的內在聯系;提出相關問題,讓學生采用以上步驟中所采用的具有多種特征的語言形式去回答相關問題;評價與總結學生回答問題的相關情況。
典型教學案例講授步驟如下:
步驟1: 知識點:a=str.join(iter)
步驟2: 知識點講授(專業術語角度): iter是一個具備迭代性質的變量,該變量將str字符串插入iter變量的元素之間,形成新的字符串,且新的字符串作為一個值,賦給變量a。
步驟3: 實例:a=",".join("12345")
步驟4: 實例講授(專業術語角度):str變量的位置被逗號替換(str代表的是字符串類型的變量),iter變量的位置被字符串: "1,2,3,4,5"替換,這樣當在Python運行環境中執行",".join("12345")指令時,字符串常量"12345"變成了"1,2,3,4,5",且把該值賦給了變量a。
步驟5: 技術難點:迭代與賦值
步驟6: 技術難點講授(專業術語角度): 迭代是對計算機特定程序中需要反復執行的對象(或者常量,或者一組指令)進行重復,即重復執行程序中的循環,直到滿足某條件為止,稱為迭代。賦值是將某一常量(數值、字符串等)賦給某個變量的過程,稱為賦值。
步驟7: 專業語言角度解釋的局限性:很明顯,對于從來沒有接觸過編程非計算機專業的工科學生的同學而言,要從專業語言的角度真正理解以上兩個專業詞匯的含義,從客觀而言,充滿著很大的挑戰。
步驟8: 講授(學生行為規范語言角度):迭代:假設某個學生A,每天6點半左右去圖書館學習,則A每天去圖書館學習的行為稱為迭代行為。這里的迭代行為與知識點中所涉及的迭代處理方法從表現形式而言,均具有重復性處理某件事情的屬性。由此可見,這兩種機理完全不同的行為在表示層達到了融合。賦值:學生A到圖書館學習,前提條件是要有座位。從信息融合表示層面而言,學生坐到座位上的過程相似于一個常量賦給一個變量的過程。這樣,可以從本質上對賦值進行及進一步地解釋:變量本質上是為了在內存中開辟一個空間,用來存放一個常量,這個過程就是賦值過程。
步驟 9: 融合語言推演-針對實例
a=",".join("12345"),在以上指令中,逗號","分別插入(迭代行為)到字符串"12345"中,生成: "1,2,3,4,5"的過程,相似于學生A每天早上6點半左右去圖書館學習的迭代行為,把生成結果`1,2,3,4,5賦給變量a的過程,相似于學生在早上6點半左右去圖書館學習找位置且坐到位置上的過程。
步驟10: 融合語言推演--針對大學生行為
學生A的學習行為,是迭代與賦值共存的學習行為,在迭代與賦值中,體現了自律(每天早上6點半去圖書館,自律的表現)、積極向上、持之以恒(迭代)的精神風貌。若每個學生像學生A一樣,迭代與賦值的共存將令學生的大學之芳華歲月變得更加精彩與美好。
步驟11: 典型案例分析(融合語言進一步推演)
通過從實例與大學生A行為兩個角度對迭代與賦值的融合語言推演,讓學生深刻地理解了迭代與賦值在其芳華之大學時光中的重要性。需要指出的是:以上指令a=",".join("12345")的迭代與賦值與大學生A的迭代與賦值的發生均需要有其支撐的環境。若指令a=",".join("12345")脫離其運行環境,則其迭代與賦值行為只能是紙上談兵。同樣的道理,若案例中的大學生A的迭代與賦值行為脫離大學校園,則恰似斷了線的風箏,是那樣的蒼白與無助,縱然內心有著積極向上、銳意進取的求知欲。這個世界原本就沒有無根之木,也沒有無源之水。每個大學生之所以今天能在這里幸福地學習與生活,離不開偉大的祖國母親給大家提供的安定、和平、幸福的大環境。因此,每個大學生除了每天努力地學習外,應該在內心深處心懷對祖國母親的愛,內心深處應具有家國情懷,內心深處應具備高尚的道德情操,讓自己在大學這個人生的芳華階段中,真正成長為一名德智體美勞等全面發展的新時代大學生。
圖2展示了本案例如何將字符串處理方法、迭代與賦值和大學生行為語言之間進行融合的過程,讓學生不僅輕易地理解了字符串處理方法、迭代與賦值的含義,而且深刻地感受到若將把字符串處理方法、迭代與賦值以及由其運行的承載環境等技術行為推演到學生的學習、愛國、家國情懷等行動中來,其必然對學生的人生產生深遠的影響。另外,讓學生很容易理解所講授的知識點及把知識點熟練地應用于實際的編程中。
本案例在實施過程中主要采用了理論教學法+案例教學法+推演教學法等教學方法。之所以采用這些教學模式,主要考慮到這些原因:編程語言專業術語具有抽象的屬性特征;所授課的非計算機專業工科學生的計算機編程基礎弱。用學生行為特征語言去解釋晦澀難懂的編程語言中的專業術語。
預期所取得的教學效果有:讓編程語言專業術語在學生行為特征語言的推演下,去掉了其抽象屬性;同時,有助于學生從本質上真正理解其所代表的科學含義;進一步啟發了學生對編程語言學習的興趣;讓學生從更深層次理解與懂得了原來編程中的科學規律與學生大學階段應有的行為特征規律具有相似性,從而讓學生更加懂得了自己在大學的芳華人生該如何度過的重要性。
3 總結
本文在分析非計算機專業工科學生在學習Python中存在的諸多問題后,提出了字符串處理方法——迭代與賦值共存之芳華的教學案例,期望用專業術語對編程中的字符串處理方法的解釋,能夠培養學生計算機編程的專業素養;期望用大學生學習的行為語言去進一步解釋編程中的字符串處理方法,讓其去掉了抽象屬性的一面,具有了直觀的特征,從而讓學生能夠進一步理解其含義與如何科學地應用;期望用字符串處理方法的運行特征以及其運行環境所折射出的規律,對學生如何度過大學之的芳華時光具有重要的啟示與激勵作用。
Python中涉及大量的專業術語,如何把這些龐雜抽象的專業術語映射成大學生行為規范語言能夠解釋的語言以及如何科學有效地建立這些龐雜抽象的專業術語與大學生行為特征語言之間的融合關系,依然存在一定的挑戰,這也是今后需要努力的一個方向。在課程思政綱領的指引下,進一步挖掘Python中專業術語與大學生行為規范語言之間的融合關系,將價值引領寓于知識傳授過程中,推進課程思政建設,提升育人實效[7]。
參考文獻:
[1] 朱雄泳,張菲菲,陳憶群,等.新工科《Python程序設計》課程改革探索[J].電腦知識與技術,2020,16(24):131-133.
[2] 宋鴻梅,曹志民,韓連福,等.Python編程語言實例教學探討[J].電腦知識與技術,2022,18(2):158-159,177.
[3] 王玲芝, 楊須棟. 淺談高校“課程思政”建設的意義[J]. 科教論壇, 2019(12): 75-76.
[4] 石書臣.正確把握“課程思政”與思政課程的關系[J].思想理論教育,2018(11):57-61.
[5] 高德毅,宗愛東.從思政課程到課程思政:從戰略高度構建高校思想政治教育課程體系[J].中國高等教育,2017(1):43-46.
[6] 童蔚蘋,陳淑燕,楊帆,等.課程思政元素挖掘與教學實踐研究——以“Python數據結構與算法”為例[J].教育教學論壇,2021(34):14-17.
[7] 何秋紅.立德樹人視域下新工科課程思政建設路徑研究[J].閩南師范大學學報(哲學社會科學版),2021,35(4):143-149.
【通聯編輯:王力】
收稿日期:2022-04-19
基金項目:淮陰師范學院校級“課程思政”建設研究項目(No.SZJG024) ;產學合作協同育人項目(202102326010) 資助
作者簡介:王昕(1975—),男,甘肅天水人,副教授,博士,主要從事模式識別與智能系統研究以及Python程序設計、Java程序設計等課程的教學與教研工作;齊金山,副教授,博士。