一、課程目標(biāo)
了解腳本語言程序設(shè)計的基本知識,掌握程序設(shè)計的基本方法,掌握程序設(shè)計的基本理論、方法和應(yīng)用,掌握高級程序設(shè)計國家標(biāo)準(zhǔn)的有關(guān)基本規(guī)定,會查閱有關(guān)國家標(biāo)準(zhǔn)和手冊,養(yǎng)成嚴(yán)格遵守和執(zhí)行有關(guān)國家標(biāo)準(zhǔn)的各項規(guī)定的良好習(xí)慣。能夠較正確而熟練地使用Python進行程序的設(shè)計;能夠識讀和編寫較復(fù)雜程度的程序;能夠使用Python解決實際應(yīng)用問題。培養(yǎng)學(xué)生計算思維能力、創(chuàng)新能力和發(fā)現(xiàn)問題、分析問題和解決問題的能力。
二、教學(xué)內(nèi)容
1. 程序設(shè)計基本方法
教學(xué)要求:
了解硬件和軟件在計算機系統(tǒng)中的不同作用;了解程序設(shè)計語言發(fā)展過程;理解Python語言的特點;掌握Python語言開發(fā)環(huán)境和運行環(huán)境配制方法;理解編寫程序的IPO方法
教學(xué)內(nèi)容:
計算機的概念
程序設(shè)計語言
Z. Python語言概述
ZN. Python開發(fā)環(huán)境配置
Z. Python語言版本更迭
實驗要求:
掌握Python開發(fā)環(huán)境和運行環(huán)境的配制方法,編寫Hello world程序。
實驗內(nèi)容:
(1)安裝Python3.x解釋器
(2)使用IDEL編寫Hello world程序
2.Python程序?qū)嵗馕?/span>
教學(xué)要求:
掌握解決計算問題的一般方法;掌握Python語言的基本語法,包括縮進、變量命名等;掌握Python語言繪制圖形的一般方法;了解Python標(biāo)準(zhǔn)庫的導(dǎo)入和使用。
教學(xué)內(nèi)容:
ZN. Python語法元素分析
turtle庫語法元素分析
實驗要求:
掌握Python語言的基本書寫和turtle庫的使用
實驗內(nèi)容:
(1)溫度轉(zhuǎn)換程序,編寫程序?qū)z氏度和華氏度的溫度數(shù)值進行轉(zhuǎn)換。
(2)Python蟒蛇繪制,使用turtle庫繪制一個蟒蛇圖案。
3.基本數(shù)據(jù)類型
教學(xué)要求:
掌握3中數(shù)字類型的概念和使用;運用Python的標(biāo)準(zhǔn)數(shù)據(jù)庫進行數(shù)值計算;掌握字符串類型的概念和使用;掌握字符串類型的格式化操作方法和應(yīng)用。
教學(xué)內(nèi)容:
數(shù)據(jù)類型
數(shù)字類型操作
N. math庫的使用
Z. 字符串類型及其操作
Z. 字符串類型格式化
實驗要求:
能夠使用math庫進行簡單的數(shù)值計算,能夠格式化輸出字符串。
實驗內(nèi)容:
(1)天天向上的力量:一年365天,如果好好學(xué)習(xí)時能力值比前一天提高1%,當(dāng)放任時相比前一天下降1%,編程計算兩種情況效果相差值。
(2)文本進度條:編程通過格式化字符串輸出和時間延遲實現(xiàn)控制臺風(fēng)格文本進度條。
4.程序的控制結(jié)構(gòu)
教學(xué)要求:
了解程序的基本結(jié)構(gòu)并繪制流程圖;掌握程序的分支結(jié)構(gòu);運用if語句實現(xiàn)分支結(jié)構(gòu);掌握程序的循環(huán)結(jié)構(gòu);運用for語句和while語句實現(xiàn)循環(huán)結(jié)構(gòu);掌握隨機庫的使用方法;了解程序的異常處理方法。
教學(xué)內(nèi)容:
程序的控制結(jié)構(gòu)
Z. 程序的分支結(jié)構(gòu)
ZN. 程序的循環(huán)結(jié)構(gòu)
N. 程序的異常處理
實驗要求:
能夠使用分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu)編寫簡單程序。
實驗內(nèi)容:
(1)身體質(zhì)量指數(shù)BMI:輸入身高和體重,輸出BMI值并根據(jù)BMI指標(biāo)分類輸出類別。
(2)計算圓周率:使用BBP公式計算圓周率的值。
5.函數(shù)和代碼復(fù)用
教學(xué)要求:
掌握函數(shù)的定義和調(diào)用方法;理解函數(shù)的參數(shù)傳遞過程以及變量的作用范圍;了解lambda函數(shù);掌握時間日期標(biāo)準(zhǔn)庫的使用;理解函數(shù)遞歸的定義和使用方法。
教學(xué)內(nèi)容:
Z. 函數(shù)的基本使用
函數(shù)的參數(shù)傳遞
datetime庫的使用
Z. 代碼復(fù)用和模塊化設(shè)計
N 5.函數(shù)遞歸
實驗要求:
能夠利用函數(shù)編寫程序,掌握遞歸函數(shù)使用方法。
實驗內(nèi)容:
(1)七段數(shù)碼管繪制:輸入當(dāng)前日期的數(shù)字形式,輸出數(shù)碼管表示的圖形形式。
(2)科赫曲線繪制:利用遞歸函數(shù)繪制0~5階科赫函數(shù)。
6.組合數(shù)據(jù)類型
教學(xué)要求:
了解3類基本組合數(shù)據(jù)類型;理解列表概念并掌握Python中的列表使用;理解字典概念并掌握Python中的字典使用;運用列表管理采集的信息,構(gòu)建數(shù)據(jù)結(jié)構(gòu);運用字典處理復(fù)雜的數(shù)據(jù)信息;運用組合數(shù)據(jù)結(jié)構(gòu)進行文本詞頻統(tǒng)計。
教學(xué)內(nèi)容:
組合數(shù)據(jù)類型概述
Z. 列表類型和操作
Z. 字典類型和操作
N. jieba庫的使用
實驗要求:
掌握列表和字典類型編寫程序處理實際問題
實驗內(nèi)容:
(1)基本統(tǒng)計值計算:輸入數(shù)據(jù)值,輸出平均值、標(biāo)準(zhǔn)差和中位數(shù)。
(2)《三國演義》人物出場統(tǒng)計:輸入電子版《三國演義》文本,輸出出場率最高的10個人物。
7.文件和數(shù)據(jù)格式化
教學(xué)要求:
掌握文件的讀寫方法以及打開和關(guān)閉等基本操作;理解數(shù)據(jù)組織的維度和特點;掌握一、二維數(shù)據(jù)的存儲格式和讀寫方法;運用PIL庫進行基本的圖像處理;運用json庫進行數(shù)據(jù)的維度轉(zhuǎn)換;了解高維數(shù)據(jù)的存儲格式和讀寫方法。
教學(xué)內(nèi)容:
Z.文件的使用
PIL庫的使用
Z. 一、二維數(shù)據(jù)的格式化處理
N. 高位數(shù)據(jù)的格式化
N. json庫的使用
實驗要求:
掌握文件的基本操作,使用json庫進行數(shù)據(jù)轉(zhuǎn)換
實驗內(nèi)容:
(1)圖像的字符畫繪制:將圖像轉(zhuǎn)換為字符畫形式。
(2)編寫程序?qū)?/span>CSV格式文件與json文件格式互相轉(zhuǎn)換。
8.程序設(shè)計方法論
教學(xué)要求:
了解計算思維的概念;掌握自頂向下的設(shè)計方法;掌握自底向上的執(zhí)行過程;了解計算生態(tài)和模塊編程思想;掌握Python第三方庫的安裝方法;掌握Python源文件的打包方法。
教學(xué)內(nèi)容:
計算思維
N. 自頂向下和自底向上
Z. pyinstaller庫的使用
N. 計算生態(tài)和模塊編程
Python第三方庫的安裝
實驗要求:
使用計算思維思想設(shè)計程序
實驗內(nèi)容:
(1)體育競技分析:輸入兩個球員的嗯哪管理概率,模擬比賽的場次,輸出兩個球員的勝負(fù)概率。
(2)pip安裝腳本:使用pip安裝第三方Python庫。
9.科學(xué)計算和可視化
教學(xué)要求:
了解科學(xué)計算的基本概念;了解數(shù)據(jù)可視化的概念;運用科學(xué)計算庫進行矩陣分析和數(shù)值運算;了解圖像的矩陣表示和處理;運行數(shù)據(jù)繪圖庫進行簡單圖表繪制。
教學(xué)內(nèi)容:
科學(xué)計算和可視化概述
ZN. numpy庫的使用
N. matplotlib庫的使用
實驗要求:
使用numpy庫和matplotlib庫實現(xiàn)簡單數(shù)據(jù)處理和可視化。
實驗內(nèi)容:
(1)圖像的手繪效果:使用numpy庫實現(xiàn)圖像的手繪效果轉(zhuǎn)換。
(2)科學(xué)坐標(biāo)圖繪制:根據(jù)給定的數(shù)據(jù)繪制阻尼衰減曲線圖。
(3)多級雷達圖繪制:根據(jù)給定的任務(wù)能力數(shù)據(jù),繪制多級雷達圖。
10.網(wǎng)絡(luò)爬蟲和自動化
教學(xué)要求:
掌握網(wǎng)絡(luò)爬蟲的基本概念和方法;運用request庫編寫基本的URL訪問過程;運用beautifulsoup4庫解析和處理HTML;掌握像搜索引擎自動提交關(guān)鍵詞并獲取范圍結(jié)果的方法。
教學(xué)內(nèi)容:
網(wǎng)絡(luò)爬蟲概述
N. request庫的使用
N. beautifulsoup4庫的使用
實驗要求:
編寫簡單的爬蟲程序,獲取數(shù)據(jù)
實驗內(nèi)容:
(1)中國大學(xué)排名爬蟲:從網(wǎng)頁中獲取中國大學(xué)排名信息,并保存為文本文件。
(2)搜索關(guān)鍵詞自動提交:像百度提交一個關(guān)鍵詞,自動獲取返回結(jié)果,保存為文本文件。
三、各教學(xué)單元學(xué)時分配表
教學(xué)單元名稱 | 講授 | 實踐/實驗 |
程序設(shè)計基本方法 | 2 | 2 |
Python程序?qū)嵗馕?/span> | 2 | 2 |
基本數(shù)據(jù)類型 | 4 | 4 |
程序的控制結(jié)構(gòu) | 4 | 4 |
函數(shù)和代碼復(fù)用 | 4 | 4 |
組合數(shù)據(jù)類型 | 4 | 4 |
文件和數(shù)據(jù)格式化 | 4 | 4 |
程序設(shè)計方法論 | 4 | 4 |
科學(xué)計算和可視化 | 4 | 4 |
網(wǎng)絡(luò)爬蟲和自動化 | 4 | 4 |
小計 | 2 | 2 |
合計 | 72 |
四、教學(xué)組織與方法
本課程教學(xué)按照工學(xué)結(jié)合的思想進行教學(xué)改革,在繼承傳統(tǒng)教學(xué)方法的基礎(chǔ)上,結(jié)合Python程序設(shè)計課程的特點和我院教學(xué)資源的實際情況,對教學(xué)方法做出了一些創(chuàng)新,靈活采用了小組討論法、案例分析法、歸納演繹法、等各種教學(xué)方法,這些教學(xué)方法的靈活運用能夠很好地引導(dǎo)學(xué)生積極思考、勤于實踐,積極完成項目工作任務(wù)。
在現(xiàn)代教學(xué)技術(shù)手段運用方面,Python程序設(shè)計課程配備了實訓(xùn)指導(dǎo)的操作演示和業(yè)務(wù)流程圖示,提供了大量的案例以及模擬考試練習(xí)等學(xué)習(xí)資料。為學(xué)生準(zhǔn)備了大量的教學(xué)案例和開發(fā)案例,訓(xùn)練學(xué)生軟件開發(fā)的能力。學(xué)生可以利用校內(nèi)實訓(xùn)室所提供的環(huán)境和工具,進行軟件開發(fā)實訓(xùn)。這些現(xiàn)代教學(xué)技術(shù)手段的應(yīng)用為課程教學(xué)改革提供了強有力的技術(shù)支持和教學(xué)資源支持。
五、課程考核與成績評定
(1)考核方式:考試。
本課程考核采取考試方式。
(2)課程成績總評
課程成績(總評)= 課堂出勤表現(xiàn)(10%)+課堂提問(10%)+平時作業(yè)(10%)+期末考試(70%)
成 績組 成 | 考核/評價環(huán)節(jié) | 分值(或百分比) | 考核/評價細則 |
出勤 | 10% | 缺勤一次扣一分,全勤10分 | |
課堂提問 | 10% | 主動回答問題一次加一分 | |
平時作業(yè) | 10% | 根據(jù)完成情況給分 | |
期末考試 | 70% | 根據(jù)完成情況給分 |
六、推薦教材和教學(xué)參考書目與文獻
推薦教材:《Python語言程序設(shè)計基礎(chǔ)(第2版)》,嵩天,禮欣,黃天羽 著,高等教育出版社,2017.2。
參考書目與文獻:《Python核心編程(第3版)》,Wesley Chun 著,孫波翔,李斌,李晗 譯,人民郵電版社,2016.5。