亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        財經(jīng)大學程序設計課的特點和Python語言的優(yōu)勢分析

        2018-01-27 05:58:52李自力王宇蔣義軍陳姚
        計算機教育 2017年12期
        關鍵詞:公共課經(jīng)管類程序設計

        李自力,王宇,蔣義軍,陳姚

        (西南財經(jīng)大學經(jīng)濟信息工程學院,四川成都610074)

        1 程序設計概念的引入

        目前,我國財經(jīng)大學計算機公共課的基本模式是在大學一年級的第一、二學期分別開設大學計算機基礎和程序設計兩門課程。雖然,根據(jù)各專業(yè)的不同特點,學校在計算機公共課方面,對學時、學分、開課形式等的設置各有不同,但以上述兩門課程為基礎的基本模式一直被大多數(shù)學校采用。通過多年的教學實踐,許多財經(jīng)大學和擔任計算機公共課的教師在一定程度上達成了共識,即經(jīng)管類專業(yè)計算機公共課的基本培養(yǎng)目標是提升學生的信息化素養(yǎng),培養(yǎng)學生的計算思維和使用計算機解決實際問題的能力。經(jīng)管類專業(yè)應用計算機主要要解決什么問題呢?數(shù)據(jù)處理和分析必然是排在第一位的。

        人們普遍認為,大學計算機基礎課程的目標主要是解決學生對計算機方面一些基礎知識的理解和計算機軟硬件方面的操作問題。程序設計課程的目標則是培養(yǎng)和訓練學生自主設計算法以及編寫程序的能力。按照這樣的理解,再結合我國目前大多數(shù)經(jīng)管類專業(yè)大學新生的信息化素養(yǎng)水平看,大學計算機基礎這門課程的挑戰(zhàn)度明顯偏低,和學生專業(yè)特點的結合也顯得沒有針對性。程序設計課程的難度較大學計算機基礎課程則大幅提高,甚至在很多學校,擔任程序設計課程教學的教師普遍感到要完成該課程的基本教學目標比較困難。

        針對上述問題,西南財經(jīng)大學大學計算機基礎和程序設計教學團隊經(jīng)過長期的教學研究和實踐,提出“在大學一年級大學計算機基礎課程的Excel部分引入程序設計內(nèi)容”的實施方案。通過近3年的教學實踐證明,該方案能夠比較好地解決大學計算機基礎和程序設計課程的連貫性和內(nèi)容匹配問題。

        眾所周知,表格數(shù)據(jù)處理及相關軟件的應用是一項經(jīng)管類專業(yè)學生必備的技能。我們通過調(diào)查發(fā)現(xiàn),在中小學中普遍開設信息技術基礎課程的前提下,大學新生對使用MicrosoftWord和MicrosoftExcel解決問題的能力存在極大差別。許多學生入校時能夠完成教師布置的普通文檔排版任務,但對Excel的數(shù)據(jù)運算和處理功能確知之甚少,更談不上應用。因為在Excel中,真正能夠解決各種問題的方法是在公式中靈活應用表達式、單元格地址引用、函數(shù)功能組合、數(shù)組公式等功能;而在構造公式之前,設計計算機解決具體問題的方法甚至是步驟,這是必要的前提。這時就很容易理解為什么在大學計算機基礎Excel電子表格這一部分的教學中,有學生會問老師怎么好像在講程序設計。為此,我們將程序設計課程中的一部分基本概念和方法,如數(shù)據(jù)類型、常量、變量、運算符、函數(shù)、表達式、賦值、邏輯判斷、數(shù)組、循環(huán)等,嵌入大學計算機基礎課程中。這樣的好處是既能夠讓學生從根本上理解Excel公式的概念,又能夠?qū)⒁恍┏绦蛟O計課基本內(nèi)容整體前移到大學計算機基礎課程中。由于MicrosoftExcel支持VBA編程,因此可以在大學計算機基礎課程中通過介紹VBA的內(nèi)容,讓學有余力的學生能夠進一步為第二學期的程序設計課程打下一定的基礎。

        2 程序設計課程的兩個目的

        很多以經(jīng)管類專業(yè)為主的財經(jīng)大學也設立了計算機科學與技術、軟件工程、信息管理與系統(tǒng)等專業(yè),這些專業(yè)的大學一年級通常也會有程序設計課程。學生常常提出這樣的問題:我們中的絕大多數(shù)畢業(yè)以后不會做程序員的工作,我們學習程序設計課程有意義嗎?這是一個很尖銳,但又必須要回答的問題。在計算機應用和計算機教育飛速發(fā)展的今天,不可能所有人都去研究計算機本身。其實,程序設計課程的教學目的是兩個不同的方向:一個是類似計算機科學與技術專業(yè)的旨在培養(yǎng)程序員的程序設計課程;另一個則是并非培養(yǎng)程序員,而是為非計算機專業(yè)人員掌握應用程序設計的方法以解決與專業(yè)相關的實際問題而開設的程序設計課程[1]。這兩個程序設計課程雖然在內(nèi)容上有很多交叉,但根本目的不一樣。計算機專業(yè)的程序設計課程比較注重軟件系統(tǒng)的開發(fā),非計算機專業(yè)的程序設計課程則比較針對各專業(yè)特點。

        通常,財經(jīng)大學的專業(yè)設置以經(jīng)濟管理類專業(yè)為主,而數(shù)據(jù)處理和分析是經(jīng)管類專業(yè)程序設計公共課要解決的基本問題。為了適合以經(jīng)管類專業(yè)為主的特點,在程序設計公共課教學內(nèi)容的設置上應該主要圍繞“數(shù)據(jù)”展開。例如,就數(shù)據(jù)輸入方法而言,程序設計公共課的教學內(nèi)容應該涵蓋鍵盤數(shù)據(jù)輸入、文件訪問、正則式及應用、網(wǎng)頁數(shù)據(jù)爬取等技術,特別是通過網(wǎng)頁數(shù)據(jù)爬取獲得數(shù)據(jù)技術,這在程序設計專業(yè)課中不一定是必需的內(nèi)容,因為在接下來的其他專業(yè)課中(如Web程序設計、移動應用開發(fā)等)可能會進一步對這些內(nèi)容進行補充。然而,對于經(jīng)管類專業(yè)的學生來講,程序設計課程不是一個系列課程。在程序設計課程中,學生必須掌握與數(shù)據(jù)處理和分析有關的一些基本概念、基本方法,甚至是一些基本技巧。學生需要具備基本的通過編寫程序?qū)崿F(xiàn)對特定目標的互聯(lián)網(wǎng)網(wǎng)頁上的數(shù)據(jù)進行獲取,并對獲取到的數(shù)據(jù)進行處理、分析的能力,因為這種能力在許多后續(xù)專業(yè)課中會大量用到。

        總而言之,經(jīng)管類專業(yè)的程序設計公共課和計算機專業(yè)的程序設計專業(yè)課之間在課程目標上存在明顯不同的特點。我們必須要在認識到這種不同特點本質(zhì)的基礎上對課程內(nèi)容做精心的取舍和組織才能達到目的。認為“經(jīng)管類專業(yè)程序設計公共課實際上就是計算機專業(yè)程序設計專業(yè)課內(nèi)容少一點、程度淺一點、要求多一點的縮減版”的觀點無疑是錯誤的。

        3 Python語言的優(yōu)勢

        經(jīng)管類專業(yè)的程序設計公共課使用什么語言?這是一個需要回答的問題。不管什么樣的程序設計課程,選擇一種程序設計語言是回避不了的事情。那么經(jīng)管類專業(yè)的程序設計課程選擇什么語言好呢?我們認為程序設計語言的選擇應該考慮到以下幾個方面:一是否易于學習和能否快速上手編寫使用程序;二是否適合數(shù)據(jù)處理和分析。

        Python語言是一種功能強大且易于使用的編程語言[2],學習Python語言的很多人都覺得Python語言很容易上手。我們以Java語言為例說明這個問題,如著名的“HollowWorld!”程序,分別使用Java語言和Python語言編寫,結果如下。

        Java語言程序[3]:

        classTest{

        publicstaticvoidmain(String[]args){

        System.out.println(“HollowWorld!”)

        }

        }

        Python語言程序[4]:

        print(“HollowWorld!”)

        其實,問題還不主要是在代碼量上。為了講清楚這個Java語言程序,我們必須對Java語言中的類、方法、main方法、String類型、方法參數(shù)、字符串數(shù)組、System、out、Println()等元素進行解釋,但在實際的教學過程中,面對程序設計的初學者,常常只能是告訴學生,這些暫時都不管,先用再說。這在學生看來很難接受,而Python語言程序?qū)木褪且粭l語句(或一個函數(shù))。另外,計算機語言語法規(guī)則規(guī)定、邏輯性強,學習起來比較枯燥[5]。因此,簡單顯得尤為重要。在經(jīng)管類專業(yè)的程序設計公共課中,Python語言的“易學性”能讓學生更容易將學習的注意力放在理解程序設計的基本概念和掌握編寫程序的基本方法上,而不會因大量顧及程序設計語言語法規(guī)則而分散精力,這對程序設計的初學者來講非常有幫助。

        Python語言很適合編寫數(shù)據(jù)處理程序,這除了Python語言本身特點適合的原因外,還有許多功能強大的第三方庫支持并簡化用戶的編程工作,也是重要的原因。例如,用戶使用Excel進行表格數(shù)據(jù)處理時,常常會遇到一些使用Excel集成的數(shù)據(jù)處理功能和自己編寫公式都難于解決的問題,這時VBA編程的辦法就派上用場,但VBA畢竟是一種編程語言,用戶要一下子熟練掌握VBA語言并能應用于表格數(shù)據(jù)處理之中,還是有一定難度的。如果是使用Python語言,我們可以輕松地找到一些好用的三方庫,然后將Excel工作表看成一個二維數(shù)據(jù)集合,便可以輕松完成類似于VBA程序的功能。以下是一個Python程序訪問Excel表中二維數(shù)據(jù)集合的案例。圖1所示是學生成績。我們希望其中的數(shù)據(jù)變成圖2所示的樣子,以便于打印出來裁剪。

        為了達到此目的,我們可以在“t2”工作表的A1中輸入并填充公式:=IF(MOD(ROW(),2)=1,'t1'!A$1,INDEX('t1'!$A$2:$F$10,ROW()/2,COLU MN()))即可。此操作看似簡單,但對許多Excel用戶來說,編寫合適的公式始終是不容易掌握的技能。一個熟悉Python語言程序設計的用戶,使用程序的辦法則可輕松完成這項任務。完成上述任務的在第三方庫支持下的Python語言程序代碼如下。

        importxlrd

        fromxlutils.copyimportcopy

        filer1=xlrd.open_workbook('temp01.xls')

        tabler1=filer1.sheets()[0]

        iflew1=copy(filer1)

        tablew1=filew1.add_sheet('t2',cell_overwrite_ok=True)

        foriinrange(tabler1.nrows-1):

        forjinrange(tabler1.ncols):

        tablew1.write(i*2,j,tabler1.cell(0,j).value)

        tablew1.write(i*2+1,j,tabler1.cell(i+1,j).value)

        f

        ilew1.save('temp01.xls')

        上面這個實例說明Python語言的易學易用性和豐富的開源庫的確能給學生帶來一個全新的程序設計體驗,改變學生那種主觀渴望學習程序設計但客觀上又學不會、學不好的狀況[6]。

        圖1 原表“t1”

        圖2 處理后的表“t2”

        4 一個適合財經(jīng)大學程序設計公共課的教學實施方案(部分)

        4.1 課程基本信息

        課程名稱:程序設計(Python)。

        學分:3。

        學時:16周,1次課/周,3學時/1次課,共48學時。

        4.2 課程教學目的

        認識學習程序設計的必要性和重要性。

        掌握高級程序設計語言程序開發(fā)環(huán)境的建立和使用。

        認識程序語言(Python)的基本元素和功能。

        具備用程序語言(Python)描述算法的基本能力。

        具備用程序語言(Python)編寫一定實用價值的數(shù)據(jù)處理、文件操作等實用程序的能力。

        具備進一步自主學習其他編程語言編寫程序解決實際問題的能力。

        4.3 課程特點

        理論與實踐并重。

        注重教學過程監(jiān)控,實施全程考核。

        引入“翻轉(zhuǎn)課堂”教學模式。

        著力培養(yǎng)學習能力和適應能力,強調(diào)自主學習。

        鼓勵學生積極思考,培養(yǎng)學生信息技術應用和創(chuàng)新能力。

        4.4 教學主要內(nèi)容

        程序設計概述/6學時。

        Python語言的基本元素/6學時。

        程序的基本結構/6學時。

        數(shù)組及應用/6學時。文件操作/6學時。

        網(wǎng)頁數(shù)據(jù)爬取/6學時。

        Python語言實用程序案例/12學時。

        4.5 考試方式

        平時成績占總成績的30%,期末考試成績占總成績的70%。

        5 結語

        目前,我國高校中為大學生開設的程序設計課程實際上面對的是兩個群體,即計算機專業(yè)(及計算機相關專業(yè))學生和非計算機專業(yè)學生。雖然這門課程都叫程序設計,但教學目標截然不同。為以經(jīng)濟管理類專業(yè)為主的財經(jīng)大學非計算機專業(yè)學生開設的程序設計公共課有明顯的數(shù)據(jù)處理和分析特征。將本文提出的“在程序設計先行課大學計算機基礎中提前引入‘程序設計’概念,并將程序設計學習的起點提前到大一第一學期”的思路和程序設計公共課教學大綱,應用到部分大學本科一年級新生的程序設計公共課中,從課程實施的效果看,學生學習程序設計的興趣和效果明顯改善。下一步,我們將進一步探索在財經(jīng)大學的程序設計公共課中適當引入多種程序設計語言,形成以Python語言為主,適當引入Java、R等語言的混合模式,從根本上解決程序設計公共課的學以致用問題。

        [1]張長海,陳娟,付燕寧,等.高級語言程序設計教學內(nèi)容與教學模式的改革與實踐[C]//大學計算機課程報告論壇論文集.北京:高等教育出版社,2008:107-111.

        [2]DawsonM.Python編程初學者指南[M].王金蘭,譯.北京:人民郵電出版社,2014:6-11.

        [3]揚厚群,林雄,伍強,等.Java程序設計[M].北京:中國鐵道出版社,2008:11.

        [4]嵩天,禮欣,黃天羽.Python語言程序設計基礎[M].北京:高等教育出版社,2014:15-17.

        [5]張克君,周知揚,張曉昆,等.計算機語言類基礎課程教學改革的研究[C]//大學計算機課程報告論壇論文集.北京:高等教育出版社,2008:127-130.

        [6]嵩天,禮欣,黃天羽.Python語言:程序設計課程教學改革的理想選擇[J].中國大學教學,2016(2):42-47.

        猜你喜歡
        公共課經(jīng)管類程序設計
        基于SPOC的經(jīng)管類專業(yè)混合式教學模式實踐探索
        福建輕紡(2022年4期)2022-06-01 06:26:16
        基于Visual Studio Code的C語言程序設計實踐教學探索
        計算機教育(2020年5期)2020-07-24 08:52:56
        從細節(jié)入手,談PLC程序設計技巧
        電子制作(2019年9期)2019-05-30 09:42:04
        Factors Affecting Memory Efficiency in EFL
        配器課在師范高校公共課教學中的幾點思考
        北方音樂(2017年4期)2017-05-04 03:40:37
        高職高專院校C語言程序設計教學改革探索
        PLC梯形圖程序設計技巧及應用
        實踐應用取向的現(xiàn)代教育技術公共課實驗教學的有效實施與應用
        高職院校公共課分類分項教學安排的實施與探討
        2014年3月經(jīng)管類暢銷書排行榜
        中國報道(2014年5期)2014-01-31 04:48:14
        在线中文字幕一区二区| 中国精品视频一区二区三区| 久久成人国产精品一区二区| 成人女同av在线观看网站| 亚洲中文字幕在线综合| 国产精品女直播一区二区| 久久久久无码国产精品一区| 久久久久成人精品无码中文字幕| 男人扒开添女人下部免费视频| 好屌草这里只有精品| 欧美人与动牲交a欧美精品| 曰本女人牲交全视频免费播放| 国产精品亚洲一区二区无码 | 亚洲AV乱码毛片在线播放| 国产精品国产三级国产AvkTV| 人妻少妇av中文字幕乱码免费| 免费在线观看亚洲视频| 自拍偷拍另类三级三色四色| 在线观看播放免费视频| 免费人成黄页网站在线一区二区| 手机在线免费观看av不卡网站| 91精品国产福利在线观看麻豆| 第一次处破女18分钟高清| 欧美黑人群一交| 四川老熟女下面又黑又肥| 中国极品少妇videossexhd| 亚洲精品亚洲人成在线下载 | 成人a级视频在线观看| 国产精品国产三级国产av′| 亚洲毛片αv无线播放一区| 亚洲av乱码中文一区二区三区| 中文人妻av大区中文不卡| 男女搞黄在线观看视频| 中文字幕亚洲一区视频| 国产精品熟女一区二区三区| 无码av天天av天天爽| 乱码丰满人妻一二三区| 久久丫精品国产亚洲av不卡| 国模无码人体一区二区| 骚片av蜜桃精品一区| 中文乱码字幕在线中文乱码|