張珩
摘要:隨著科學(xué)技術(shù)的快速發(fā)展,帶領(lǐng)人們進(jìn)入到人工智能時代,計算思維培養(yǎng)作為編程教學(xué)中的一項重要培養(yǎng)內(nèi)容,成為信息技術(shù)教學(xué)中的一項重點(diǎn)關(guān)注內(nèi)容。為了能夠充分理解Python語言的意義,不可局限于一種語言,需要從思維層面出發(fā)去理解,并在此基礎(chǔ)上探索Python語言教學(xué)對提升計算思維的意義。本文對計算思維及Python語言的含義及特點(diǎn)進(jìn)行概述,分析Python教學(xué)在計算機(jī)思維培養(yǎng)中的具體應(yīng)用。
關(guān)鍵詞:Python教學(xué);計算機(jī)思維;翻轉(zhuǎn)課堂;班級博客
中圖分類號:TP393? ? ? 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2020)32-0172-02
計算思維作為一種引領(lǐng)時代潮流及方向的教育理念,本身在使用過程中展現(xiàn)出了較強(qiáng)的優(yōu)越性,無論在國內(nèi)還是在國外均受到了人們的廣泛關(guān)注。近年來,Python教學(xué)被廣泛應(yīng)用于高校程序設(shè)計課程中,通過采用理論與實(shí)踐相結(jié)合課程教學(xué)方法,激發(fā)了學(xué)生的創(chuàng)新思維,提升了計算機(jī)思維培養(yǎng)效果及質(zhì)量。
1相關(guān)理論概述
1.1 計算思維的含義及特點(diǎn)
1.1.1 計算思維的含義
計算思維主要是指通過使用計算機(jī)科學(xué)基礎(chǔ)概念,來完成對系統(tǒng)地設(shè)計及問題的求解,確保能夠更好地理解人類的行為。
1.1.2 計算思維特點(diǎn)
第一,促進(jìn)思維轉(zhuǎn)化。計算思維在實(shí)際的應(yīng)用過程中,主要是通過仿真、轉(zhuǎn)化、嵌入及約簡等方式,將看起來比較困難的問題重新進(jìn)行解釋,并告知如何進(jìn)行求解?;A(chǔ)計算思維具有此特點(diǎn),給編程者帶來極大的成就感,對激發(fā)學(xué)生的學(xué)習(xí)熱情及解決問題熱情發(fā)揮了重要的作用。第二,使用分解及抽象方法對龐雜任務(wù)進(jìn)行控制。通過使用計算思維,能夠使復(fù)雜的問題變得更加系統(tǒng)化及簡單化,幫助人們在冗雜信息中尋找到處理問題的方法,有助于培養(yǎng)人的大局觀念,提升問題解決效果,使人的敏捷思維得以提升。第三,以關(guān)注點(diǎn)為中心,選取合理地解決方法。在對問題進(jìn)行分析時,需選取一種恰當(dāng)?shù)姆椒?,對一些需要急切解決及重點(diǎn)問題進(jìn)行建模,確保問題能夠快速得到解決,提升建模者分析問題效率,完成對人大局觀念的培養(yǎng),提升問題解決效果[1]。
1.2 Python語言的含義及特點(diǎn)
1.2.1 Python語言的含義
Python語言作為一種高級編程語言,使用范圍較廣,通過對該項語言的開發(fā)及使用,能夠?qū)⒋a的可讀性充分地展現(xiàn)了出來,語法允許程序員可使用較少的代碼來對相關(guān)概念進(jìn)行表達(dá)。Python作為一種編程語言,有助于提升工作效率,促進(jìn)了系統(tǒng)的有效集成。
1.2.2 Python語言特點(diǎn)
第一,任意拼接特點(diǎn)。使用者在使用期間,可根據(jù)自己的實(shí)際使用要求,對源代碼進(jìn)行修改,避免工作出現(xiàn)重復(fù)性。需要將編程的便捷性充分地展現(xiàn)出來,既有的程序編制到其他軟件中。因此,通過對Python語言的特性進(jìn)行分析可知,展現(xiàn)出了拼接、自由移植、自由剪裁、擴(kuò)展及嵌入等功能,通過與其他平臺或語言混合使用,有助于強(qiáng)化學(xué)生對計算思維的充分領(lǐng)悟及理解,提升了學(xué)生的計算思維,促使學(xué)生的綜合素質(zhì)大大提升。第二,廣泛性特點(diǎn)。Python語言在實(shí)際的使用過程中,完成了對簡單語法的充分運(yùn)用,尤其是對于一些剛?cè)腴T的學(xué)生,有助于增強(qiáng)學(xué)生的計算思維信息,能夠更好地掌握計算語言。在專家學(xué)者中應(yīng)用,有助于減輕其工作壓力,充分地展現(xiàn)出了Python語言應(yīng)用的廣泛性[2]。
2 Python教學(xué)在計算機(jī)思維培養(yǎng)中的應(yīng)用
2.1 Python語言語法的快速學(xué)習(xí)
需要對Python語言語法進(jìn)行夯實(shí),指導(dǎo)學(xué)生使用Python工具來解決實(shí)際問題,以此來完成對學(xué)生進(jìn)行創(chuàng)新能力及計算思維培養(yǎng)。要求學(xué)生在課堂學(xué)習(xí)過程中,應(yīng)掌握最基礎(chǔ)的Python基礎(chǔ)語法及其相關(guān)知識點(diǎn),課程內(nèi)容包括理論課程及實(shí)踐課程,每個課程的時間均為12個課時,在課堂教學(xué)中,教師應(yīng)教會學(xué)生使用Python語言解決實(shí)際問題的方法,以此來幫助 學(xué)生構(gòu)建最為基本的知識體系,完成對學(xué)生計算機(jī)思維的培養(yǎng)。其中,理論課程內(nèi)容包括課程概論及Python安裝,基本數(shù)據(jù)類型,格式化輸出及使用庫,順序、選擇、循環(huán)結(jié)構(gòu),組合數(shù)據(jù)類型和函數(shù),文件類操作。實(shí)踐課程內(nèi)容包括Python安裝和示例類程序,數(shù)據(jù)類型轉(zhuǎn)換、數(shù)據(jù)輸出習(xí)題、使用Math庫,練習(xí)應(yīng)以選擇和循環(huán)為主,如π的運(yùn)算,組合數(shù)據(jù)類型強(qiáng)化練習(xí)、列表排序、函數(shù)基礎(chǔ),文本文件的讀取和寫入。理論課程和實(shí)踐課程的總學(xué)時為24學(xué)時,在24學(xué)時結(jié)束之后,在第7周,應(yīng)安排學(xué)生做Python語言判斷結(jié)構(gòu)、格式化輸出及單層循環(huán)結(jié)構(gòu)等知識點(diǎn)考核。從以上的學(xué)習(xí)中可知,在程序設(shè)計語言中Python語言作為其中最為重要的一種語言形式,該項語言在學(xué)習(xí)過程中,學(xué)習(xí)方法較為簡單,為了強(qiáng)化學(xué)生的運(yùn)用能力,教師應(yīng)向?qū)W生講述Python語言核心語法知識,學(xué)生可使用Python語言來解決實(shí)際存在的問題,對培養(yǎng)學(xué)生的創(chuàng)新能力及計算思維具有重要作用[3]。
2.2 MOOC+SPOC+翻轉(zhuǎn)課堂
為了提升學(xué)生計算思維培養(yǎng)效果及質(zhì)量,給學(xué)生提供更多地學(xué)習(xí)資源,應(yīng)教會學(xué)生如何使用智能手機(jī)進(jìn)行學(xué)習(xí)。在Python語言程序課程教學(xué)中,學(xué)生會在課前對遇到的問題進(jìn)行提前預(yù)習(xí),觀看SPOC及MOOC上的課件資源及視頻資料,對于一些不懂之處可反復(fù)進(jìn)行觀看,并要求學(xué)生積極地參與到網(wǎng)絡(luò)上的話題討論中去,以此來強(qiáng)化學(xué)生對Python語言的掌握。MOOC+SPOC+翻轉(zhuǎn)課堂教學(xué)模式作為一種新型的教學(xué)模式,實(shí)現(xiàn)了傳統(tǒng)教學(xué)方法與網(wǎng)絡(luò)教學(xué)資源的有機(jī)整合,促使學(xué)生的學(xué)習(xí)方式發(fā)生改變,學(xué)生的學(xué)習(xí)興趣及學(xué)習(xí)積極性得以提升,并且實(shí)現(xiàn)了對零碎時間及手機(jī)等智能工具的充分運(yùn)用。在本次課程實(shí)踐中,翻轉(zhuǎn)課堂的次數(shù)為2次,課堂教學(xué)主題為“如何快速計算大數(shù)是否為素數(shù)”和“使用random庫生成復(fù)雜密碼”。在本次課程中,大多數(shù)學(xué)生均能夠積極主動地參與到課堂學(xué)習(xí)中來,并且課堂學(xué)習(xí)積極性較高,課前,教師要求學(xué)生在課下,應(yīng)自行進(jìn)行MOOC和SPOC課程學(xué)習(xí),為了提升課堂教學(xué)效果,強(qiáng)化學(xué)生對課堂知識點(diǎn)的進(jìn)一步了解,應(yīng)使用網(wǎng)絡(luò)檢索、團(tuán)隊合作及實(shí)踐等教學(xué)方式,并將學(xué)生分成幾個小組,對教學(xué)成果進(jìn)行展示。例如,教師給學(xué)生列出了一大段數(shù)字,要求學(xué)生說出哪些是素數(shù),應(yīng)合理設(shè)計基本算法,在對數(shù)字進(jìn)行加速運(yùn)算時一般使用第三方NumPy庫,通過在課堂上采用該種教學(xué)方式,完成了對學(xué)生解決問題能力的培養(yǎng),提升了學(xué)生的計算思維能力,激發(fā)了學(xué)生的課堂學(xué)習(xí)興趣,引導(dǎo)學(xué)生提出一系列創(chuàng)新性教學(xué)方法。通過對學(xué)生的學(xué)習(xí)情況進(jìn)行總結(jié)分析可知,有很大一部分學(xué)生認(rèn)為該種教學(xué)模式有助于提升課堂教學(xué)效果,學(xué)生學(xué)習(xí)主動性明顯提升,能夠積極主動參與到課堂學(xué)習(xí)中來。
2.3 班級博客
為了提升Python語言程序設(shè)計課程教學(xué)效果及質(zhì)量,在對博客功能進(jìn)行測試時,應(yīng)邀請相關(guān)的專家參與進(jìn)來,確保測試工作更具合理性。班級博客的開設(shè)工作一般由任課教師來完成,邀請學(xué)生參與到班級博客中來。學(xué)生可自動在班級在班級博客中發(fā)表相關(guān)的博文,博文在發(fā)布之后會自動顯示在班級博客的列表中,為教師進(jìn)行博文評閱提供便利。另外,通過分析班級博客功能及相關(guān)的作業(yè)功能,可知在使用班級博客期間,對學(xué)生發(fā)布的內(nèi)容不做限制,要求學(xué)生可發(fā)布一些自己感興趣的內(nèi)容,在班級博客上進(jìn)行分享,使其他學(xué)生能夠閱讀到,擴(kuò)展了學(xué)生的知識點(diǎn)。通過采用該種方式,有大量優(yōu)秀的博文涌現(xiàn)出,博文類型包括cv2、Matplotlib、NumPy、Python等,有很多的學(xué)生在課程開展的第4周,便完成了教材中的課后習(xí)題,并在博客中發(fā)布了相關(guān)的參考文獻(xiàn)。博客作為一種新型的教學(xué)方法,對提升學(xué)生的計算機(jī)思維具有重要作用。另外,教師要求學(xué)生堅持寫博客,不僅是學(xué)生記錄成長的過程,也有助于強(qiáng)化學(xué)生的解決問題能力[4]。
2.4? 創(chuàng)新實(shí)驗(yàn)
為了能夠完成對學(xué)生計算思維能力的更好培養(yǎng),強(qiáng)化學(xué)生解決問題能力尤為重要。在課程的第7周,需要將教學(xué)的重心放在各類數(shù)據(jù)庫的應(yīng)用中,合理設(shè)計一些綜合實(shí)驗(yàn),促進(jìn)學(xué)生創(chuàng)新能力的提升,符合學(xué)生計算思維能力培養(yǎng)要求。需要將Arduion、Python、MAX30100心率血氧數(shù)據(jù)采集分析系統(tǒng)作為創(chuàng)新實(shí)驗(yàn)的主要內(nèi)容,在課程教學(xué)中,需要將開源硬件Arduino UNO R3作為課程的基本原理,將接觸人的手指通過心率血氧傳感器MAX30100接入進(jìn)去,以此來獲取血氧數(shù)據(jù)及心率數(shù)據(jù),經(jīng)過串口在上位機(jī)的Python程序中上傳數(shù)據(jù),應(yīng)以數(shù)據(jù)為依據(jù),對血氧圖進(jìn)行繪制。本次實(shí)驗(yàn)在開展過程中,使用到的Python語言形式包括turtle、PySerial、Matplotlip等庫。課程教學(xué)內(nèi)容包括turtle庫的使用,文件讀寫、讀數(shù)據(jù)文件并繪圖,網(wǎng)絡(luò)爬蟲,Arduino使用,PySeial庫、Arduino,心率血氧綜合實(shí)驗(yàn)等,本次課程屬于一種創(chuàng)新性綜合性軟硬件結(jié)合實(shí)驗(yàn)課程,在課程教學(xué)過程中,完成了對大量基礎(chǔ)知識的應(yīng)用。為了提升課堂教學(xué)效果及質(zhì)量,各項教學(xué)工作在實(shí)施及開展期間,應(yīng)循序漸進(jìn) 進(jìn)行,致力于培養(yǎng) 學(xué)生的計算思維 能力及解決問題能力。通過Arduino編程,強(qiáng)化了C++語言的運(yùn)用效果,并且學(xué)生在學(xué)習(xí)期間掌握了大量 的Python語言知識點(diǎn),為了方便學(xué)生閱讀,提供了Arduino示例代碼,學(xué)生可根據(jù)自己的實(shí)際使用需求,規(guī)范修改Arduino程序代碼,大多數(shù)參與該類課程學(xué)習(xí)的學(xué)生均能夠較好地完成教學(xué)任務(wù)。
2.5 Python課程與學(xué)生學(xué)習(xí)實(shí)際相貼合
興趣是提升教學(xué)效果的催化劑,教師為了確保課程教學(xué)工作更具針對性,在課堂教學(xué)前,教師會采用調(diào)查問卷形式,了解學(xué)生的實(shí)際學(xué)習(xí)情況,例如,在“你選擇這門課程最主要的原因中”,選取了有效答案的學(xué)生占比為50%,選擇感興趣的學(xué)生占比為46.67%,選擇取得學(xué)分的人數(shù)占比為3.33%。從調(diào)查結(jié)果中可知,學(xué)生選取Python語言課程的依據(jù)以興趣為出發(fā)點(diǎn),為了確保學(xué)生在課程學(xué)習(xí)過程中能夠保留興趣,應(yīng)做好以下幾方面工作:第一,從細(xì)節(jié)處入手。例如,在進(jìn)行華氏與攝氏溫度進(jìn)行轉(zhuǎn)換時,教師應(yīng)先向?qū)W生介紹熟悉的攝氏溫度概念,之后將華氏溫度起源的故事向?qū)W生進(jìn)行講述,有助于增強(qiáng)學(xué)生的字符串處理及聯(lián)系選擇結(jié)構(gòu)編程興趣。第二,貼近學(xué)生的實(shí)際生活。應(yīng)根據(jù)學(xué)生的設(shè)計學(xué)習(xí)需要,合理選取Python庫,確保能夠與學(xué)生的實(shí)際學(xué)習(xí)相貼合。例如,在進(jìn)行文本詞頻及分詞講解期間,為了強(qiáng)化學(xué)生的學(xué)習(xí)效果,教師應(yīng)選取一些歷年考研真題,幫助學(xué)生分析詞頻,使學(xué)生能夠充分地了解到考研時需要掌握的單詞,或找到一些學(xué)生感興趣的資料及新聞,強(qiáng)化學(xué)生對物聯(lián)網(wǎng)運(yùn)行原理的充分了解,提升Python語言課程教學(xué)效果及質(zhì)量,增強(qiáng)學(xué)生的學(xué)習(xí)興趣,促進(jìn)學(xué)生計算思維能力的提升。
3結(jié)論
Python語言課程作為一種合適的編程課程語言,由于培養(yǎng)學(xué)生的思維能力并不是一門編程課程可以實(shí)現(xiàn)的,通過在課程教學(xué)中引入Python語言語法、MOOC+SPOC+翻轉(zhuǎn)課堂、班級博客、創(chuàng)新實(shí)驗(yàn)、Python與學(xué)生學(xué)習(xí)實(shí)際相貼合等課程內(nèi)容,增強(qiáng)了學(xué)生的團(tuán)隊榮譽(yù)感,有助于激發(fā)學(xué)生的創(chuàng)新能力,將學(xué)生引入到課程學(xué)習(xí)中來,實(shí)現(xiàn)了對學(xué)生的計算思維能力的培養(yǎng)。
參考文獻(xiàn):
[1] 劉維勝.Python教學(xué)培養(yǎng)計算機(jī)人才的思維能力的策略初探[J].電腦迷,2018(36):187-188.
[2] 王亞萍.計算思維培養(yǎng)視域下《Python程序設(shè)計》課程的教學(xué)改革實(shí)踐[J].電腦知識與技術(shù),2018,14(2):99-100,102.
[3] 吳萍,朱敏,蒲鵬.基于思維培養(yǎng)的Python程序設(shè)計類課程之實(shí)踐[J].福建電腦,2017,33(6):167-168.
[4] 肖勝剛,袁方,安海寧. Python課程助力計算思維和創(chuàng)新能力培養(yǎng)[J]. 計算機(jī)教育, 2017(9):11-14.
【通聯(lián)編輯:光文玲】