隨著大數(shù)據(jù)技術(shù)和人工智能技術(shù)的飛速發(fā)展,大數(shù)據(jù)和人工智能已經(jīng)滲透到社會(huì)生活和生產(chǎn)的各個(gè)領(lǐng)域,已成為我們?nèi)粘I畈豢苫蛉钡囊徊糠,被廣泛地應(yīng)用到實(shí)際生活和工作中。Python語(yǔ)言作為一門程序設(shè)計(jì)語(yǔ)言,既具有簡(jiǎn)單易學(xué)、免費(fèi)開(kāi)源的特性,又具有面向?qū)ο、可移植、可擴(kuò)展性和豐富的庫(kù)的優(yōu)勢(shì)成為了大數(shù)據(jù)和人工智能的主要開(kāi)發(fā)語(yǔ)言。
據(jù)一項(xiàng)民意調(diào)查顯示,超過(guò)57%的大數(shù)據(jù)和人工智能的開(kāi)發(fā)人員更愿意選擇Python語(yǔ)言。Python應(yīng)用無(wú)處不在: 后端開(kāi)發(fā)、前端開(kāi)發(fā)、爬蟲(chóng)開(kāi)發(fā)、人工智能、金融量化分析、大數(shù)據(jù)、物聯(lián)網(wǎng)等,已經(jīng)成為2020年最受工程師歡迎的編程語(yǔ)言,當(dāng)前Python應(yīng)用開(kāi)發(fā)技術(shù)在各公司都有大規(guī)模使用,Python的發(fā)展前景不可估量。
作者為了適應(yīng)高職高專課程建設(shè)、課程改革、教學(xué)改革而編寫了本書,本書是高校一線教師與企業(yè)軟件工程師合作的結(jié)晶,也是一本校企合作的“工學(xué)結(jié)合”、基于工作過(guò)程、項(xiàng)目教學(xué)與任務(wù)驅(qū)動(dòng)結(jié)合的教材。
本書內(nèi)容的選取符合高職高專學(xué)生的學(xué)習(xí)和應(yīng)用需求,通過(guò)8個(gè)精選的項(xiàng)目由淺入深、循序漸進(jìn)地全面介紹Python語(yǔ)言的基礎(chǔ)知識(shí)、編程方法和技巧。8個(gè)項(xiàng)目包括千米與海里轉(zhuǎn)換、計(jì)算三角形面積、水仙花數(shù)、打印萬(wàn)年歷、用戶注冊(cè)登錄、烏龜吃魚小游戲、數(shù)據(jù)庫(kù)連接和綜合實(shí)訓(xùn)。每個(gè)項(xiàng)目都將按照“項(xiàng)目分析—知識(shí)加油站—項(xiàng)目實(shí)現(xiàn)—項(xiàng)目總結(jié)—拓展訓(xùn)練”的結(jié)構(gòu)對(duì)內(nèi)容進(jìn)行組織,其中“項(xiàng)目分析”又分為“項(xiàng)目描述”“項(xiàng)目目標(biāo)”和“項(xiàng)目難點(diǎn)”; “知識(shí)加油站”主要講解本項(xiàng)目所用到的理論知識(shí); “項(xiàng)目實(shí)現(xiàn)”包括本項(xiàng)目的實(shí)現(xiàn)代碼和結(jié)果截圖; “拓展訓(xùn)練”讓讀者自己做一個(gè)類似的項(xiàng)目,達(dá)到活學(xué)活用、學(xué)以致用的目的。
本書由張長(zhǎng)海和趙海霞主編,其中項(xiàng)目3由趙海霞編寫,項(xiàng)目8由張長(zhǎng)海編寫,項(xiàng)目1由張衛(wèi)榮編寫,項(xiàng)目2由李能能編寫,項(xiàng)目4由崔娟編寫,項(xiàng)目5由李艷和徐希煒共同編寫,項(xiàng)目6由張寶華和李群亮共同編寫,項(xiàng)目7由鄭偉和劉聰共同編寫。
本書編者水平有限,難免存在一些不足,敬請(qǐng)廣大讀者批評(píng)指正。
編者2020年6月
項(xiàng)目1千米與海里轉(zhuǎn)換——Python概述
1.1Python概述
1.1.1Python語(yǔ)言發(fā)展史
1.1.2Python語(yǔ)言的特點(diǎn)
1.1.3Python的應(yīng)用領(lǐng)域
1.2Python環(huán)境配置
1.2.1Python的安裝
1.2.2IDLE的使用
1.2.3集成開(kāi)發(fā)環(huán)境PyCharm的安裝
1.2.4PyCharm的使用
1.3程序的開(kāi)發(fā)與編寫
1.3.1程序開(kāi)發(fā)流程
1.3.2程序編寫的基本方法
1.3.3數(shù)據(jù)表示——變量
1.3.4良好的Python編程習(xí)慣
項(xiàng)目2計(jì)算三角形面積——Python數(shù)據(jù)類型
2.1數(shù)字類型
2.1.1數(shù)字類型的表示方法
2.1.2實(shí)例1: 根據(jù)身高體重計(jì)算BMI指數(shù)
2.1.3數(shù)字類型轉(zhuǎn)換
2.1.4數(shù)字類型的運(yùn)算
2.1.5實(shí)例2: 模擬商家收銀抹零行為
2.2字符串
2.2.1字符串的定義方式
2.2.2字符串的格式化輸出
2.2.3字符串操作符
2.3列表
2.3.1列表的創(chuàng)建方式
2.3.2列表的遍歷和排序
2.3.3實(shí)例3: 商品價(jià)格區(qū)間設(shè)置與排序
2.3.4添加、刪除和修改列表元素
2.3.5實(shí)例4: 人事管理系統(tǒng)
2.3.6嵌套列表
2.4認(rèn)識(shí)元組
2.4.1元組的創(chuàng)建方式
2.4.2訪問(wèn)元組元素
2.4.3實(shí)例5: 中文數(shù)字對(duì)照表
2.5字典
2.5.1字典的創(chuàng)建方式
2.5.2字典的基本操作
項(xiàng)目3水仙花數(shù)——Python程序語(yǔ)句
3.1分支語(yǔ)句
3.1.1ifelse語(yǔ)句
3.1.2省略else的if語(yǔ)句
3.1.3ifelif語(yǔ)句
3.1.4if語(yǔ)句嵌套
3.1.5判斷多個(gè)條件
3.1.6綜合實(shí)例——體脂稱
3.2循環(huán)語(yǔ)句
3.2.1for語(yǔ)句
3.2.2while語(yǔ)句
3.2.3循環(huán)嵌套
3.3其他語(yǔ)句
3.3.1break語(yǔ)句
3.3.2continue語(yǔ)句
3.3.3pass語(yǔ)句
3.4異常語(yǔ)句
3.4.1異常簡(jiǎn)介
3.4.2異常類
3.4.3異常處理
3.4.4異常拋出
3.4.5自定義異常
項(xiàng)目4打印萬(wàn)年日歷——Python函數(shù)與模塊
4.1Python函數(shù)
4.1.1函數(shù)的定義和調(diào)用
4.1.2函數(shù)參數(shù)與返回值
4.2Python變量作用域范圍
4.2.1局部變量
4.2.2全局變量
4.3函數(shù)的調(diào)用
4.4Python模塊
4.4.1模塊的基本使用
4.4.2自定義模塊的使用
項(xiàng)目5用戶注冊(cè)登錄——Python文件操作
5.1文件的打開(kāi)與關(guān)閉
5.1.1文件的打開(kāi)
5.1.2文件的關(guān)閉
5.2從文件中讀取數(shù)據(jù)
5.3向文件寫入數(shù)據(jù)
5.4文件的定位讀取
5.5文件的復(fù)制與重命名
5.5.1文件的復(fù)制
5.5.2文件的重命名
5.6目錄操作
5.6.1創(chuàng)建目錄
5.6.2刪除目錄
5.6.3獲取目錄的文件列表
5.7文件路徑操作
5.7.1相對(duì)路徑與絕對(duì)路徑
5.7.2獲取當(dāng)前路徑
5.7.3檢測(cè)路徑的有效性
5.7.4路徑的拼接
項(xiàng)目6“烏龜吃魚”小游戲——Python面向?qū)ο缶幊?/p>
6.1面向?qū)ο?/p>
6.2類和對(duì)象
6.2.1類的定義
6.2.2對(duì)象的創(chuàng)建
6.2.3構(gòu)造方法和析構(gòu)方法
6.2.4self的使用
6.3Python面對(duì)對(duì)象三大特性
6.3.1封裝
6.3.2繼承
6.3.3多態(tài)
6.4類屬性與類方法
6.4.1類屬性
6.4.2類方法
6.5游戲模塊——pygame模塊
6.5.1安裝pygame
6.5.2使用pygame模塊
項(xiàng)目7數(shù)據(jù)庫(kù)連接(MySQL)
7.1數(shù)據(jù)庫(kù)SQL語(yǔ)言基礎(chǔ)知識(shí)
7.1.1登錄MySQL數(shù)據(jù)庫(kù)軟件
7.1.2創(chuàng)建數(shù)據(jù)庫(kù)SQL代碼格式
7.1.3創(chuàng)建數(shù)據(jù)表SQL代碼格式
7.1.4添加數(shù)據(jù)SQL代碼格式
7.2數(shù)據(jù)庫(kù)操作
7.2.1連接數(shù)據(jù)庫(kù)
7.2.2執(zhí)行SQL語(yǔ)句
7.2.3插入數(shù)據(jù)
7.2.4修改數(shù)據(jù)
7.2.5刪除數(shù)據(jù)
項(xiàng)目8綜合實(shí)訓(xùn)——爬蟲(chóng)
8.1HTTP協(xié)議
8.1.1HTTP的請(qǐng)求與響應(yīng)
8.1.2URL
8.1.3客戶端HTTP請(qǐng)求
8.1.4服務(wù)端HTTP響應(yīng)
8.1.5項(xiàng)目依賴包
8.2爬取與解析網(wǎng)站數(shù)據(jù)
8.2.1爬取頁(yè)面
8.2.2目標(biāo)網(wǎng)頁(yè)分析
8.2.3BeautifulSoup解析HTML提取目標(biāo)數(shù)據(jù)
8.2.4獲取全部頁(yè)面數(shù)據(jù)并存儲(chǔ)到數(shù)據(jù)庫(kù)
參考文獻(xiàn)