Python編程寶典:迅速提高編程水平的100個(gè)關(guān)鍵技能
本書以實(shí)戰(zhàn)技能的形式,講解了Python編程從入門到精通可能涉及的100個(gè)關(guān)鍵技能,從最基本的語法基礎(chǔ),到面向?qū)ο蟪绦蛟O(shè)計(jì),再到算法與數(shù)據(jù)結(jié)構(gòu),最后是基于Python的各種應(yīng)用,包括游戲、網(wǎng)站、數(shù)據(jù)分析與數(shù)據(jù)挖掘等。本書內(nèi)容全面,力求覆蓋Python所能涉及的各方面應(yīng)用。通過實(shí)戰(zhàn)技能的形式,讀者學(xué)習(xí)時(shí)容易上手操作,達(dá)到學(xué)以致用、舉一反三的目的。
全書分5章,共100個(gè)關(guān)鍵實(shí)戰(zhàn)技能。第1章主要介紹了Python基本語法的27個(gè)實(shí)戰(zhàn)技能;第2章主要介紹了Python經(jīng)典算法的21個(gè)實(shí)戰(zhàn)技能;第3章主要介紹了Python在應(yīng)用開發(fā)方面的13個(gè)實(shí)戰(zhàn)技能;第4章主要介紹了Python在數(shù)據(jù)分析方面的15個(gè)實(shí)戰(zhàn)技能;第5章在第4章內(nèi)容的基礎(chǔ)上,主要介紹了Python在數(shù)據(jù)挖掘方面的24個(gè)實(shí)戰(zhàn)技能。
本書既適合非計(jì)算機(jī)軟件專業(yè)出身的編程小白,也適合即將走上工作崗位的廣大畢業(yè)生,以及已經(jīng)有編程經(jīng)驗(yàn)但想轉(zhuǎn)行做數(shù)據(jù)分析與數(shù)據(jù)挖掘的專業(yè)人士。同時(shí),還可以作為廣大職業(yè)院校、培訓(xùn)班的教學(xué)參考用書。
郭奕,工學(xué)博士,西華大學(xué)電氣與電子信息學(xué)院副教授,碩士生導(dǎo)師。主要研究方向?yàn)槎嗝襟w信息處理、數(shù)據(jù)挖掘、人工智能及其應(yīng)用,主持或參與完成多項(xiàng)國家自然科學(xué)基金和省部級課題,具有十余年企業(yè)工作經(jīng)驗(yàn)和軟件研發(fā)經(jīng)驗(yàn);發(fā)表SCI/EI論文十余篇,申請國家發(fā)明專項(xiàng)5項(xiàng),軟件著作權(quán)十余項(xiàng)。
肖舒予,計(jì)算機(jī)和管理學(xué)雙學(xué)士,MPA碩士,四川大學(xué)審計(jì)處高級審計(jì)師。長期從事會計(jì)和審計(jì)相關(guān)工作,熟悉會計(jì)、審計(jì)及相關(guān)經(jīng)濟(jì)數(shù)據(jù)分析工作,擅長利用數(shù)據(jù)分析和挖掘的方法進(jìn)行數(shù)據(jù)分析。
第1章 Python語言基礎(chǔ)的關(guān)鍵技能 001
實(shí)戰(zhàn)技能01:“Hello World!”的輸出 002
實(shí)戰(zhàn)技能02:數(shù)字求和 007
實(shí)戰(zhàn)技能03:二次方程的求解 009
實(shí)戰(zhàn)技能04:攝氏度與華氏度的轉(zhuǎn)換 015
實(shí)戰(zhàn)技能05:隨機(jī)數(shù)的生成 018
實(shí)戰(zhàn)技能06:判斷字符串是否為數(shù)字 021
實(shí)戰(zhàn)技能07:奇偶數(shù)判斷 027
實(shí)戰(zhàn)技能08:閏年的判斷 029
實(shí)戰(zhàn)技能09:獲取最大值 032
實(shí)戰(zhàn)技能10:質(zhì)數(shù)的判斷 036
實(shí)戰(zhàn)技能11:素?cái)?shù)的輸出 039
實(shí)戰(zhàn)技能12:階乘的實(shí)現(xiàn) 040
實(shí)戰(zhàn)技能13:乘法表的輸出 042
實(shí)戰(zhàn)技能14:阿姆斯特朗數(shù)的實(shí)現(xiàn) 044
實(shí)戰(zhàn)技能15:斐波那契數(shù)列的實(shí)現(xiàn) 047
實(shí)戰(zhàn)技能16:尋找最大公約數(shù) 052
實(shí)戰(zhàn)技能17:尋找最小公倍數(shù) 054
實(shí)戰(zhàn)技能18:計(jì)算器的實(shí)現(xiàn) 057
實(shí)戰(zhàn)技能19:漢諾塔的實(shí)現(xiàn) 060
實(shí)戰(zhàn)技能20:自定義數(shù)組 063
實(shí)戰(zhàn)技能21:自定義矩陣 068
實(shí)戰(zhàn)技能22:自定義隊(duì)列 071
實(shí)戰(zhàn)技能23:自定義棧 074
實(shí)戰(zhàn)技能24:自定義二叉樹 078
實(shí)戰(zhàn)技能25:自定義有向圖 081
實(shí)戰(zhàn)技能26:自定義集合 084
實(shí)戰(zhàn)技能27:《絕地求生》的實(shí)現(xiàn) 087
第2章 Python算法實(shí)戰(zhàn)的關(guān)鍵技能 092
實(shí)戰(zhàn)技能28:冒泡排序 093
實(shí)戰(zhàn)技能29:選擇排序 095
實(shí)戰(zhàn)技能30:插入排序 097
實(shí)戰(zhàn)技能31:快速排序 099
實(shí)戰(zhàn)技能32:堆排序 102
實(shí)戰(zhàn)技能33:線性查找 105
實(shí)戰(zhàn)技能34:折半查找 107
實(shí)戰(zhàn)技能35:分塊查找 109
實(shí)戰(zhàn)技能36:二叉遍歷 112
實(shí)戰(zhàn)技能37:簡單的學(xué)生成績管理系統(tǒng) 115
實(shí)戰(zhàn)技能38:盒子的移動 120
實(shí)戰(zhàn)技能39:老鼠走迷宮 122
實(shí)戰(zhàn)技能40:鐵軌列車出站管理 125
實(shí)戰(zhàn)技能41:股票收益最大化 128
實(shí)戰(zhàn)技能42:哈夫曼編碼的實(shí)現(xiàn) 131
實(shí)戰(zhàn)技能43:收銀員找錢 134
實(shí)戰(zhàn)技能44:八皇后問題 136
實(shí)戰(zhàn)技能45:地鐵里的間諜 139
實(shí)戰(zhàn)技能46:下落的樹葉 143
實(shí)戰(zhàn)技能47:小球下落 146
實(shí)戰(zhàn)技能48:給任務(wù)排序 148
第3章 Python應(yīng)用開發(fā)的關(guān)鍵技能 152
實(shí)戰(zhàn)技能49:文件讀寫 153
實(shí)戰(zhàn)技能50:數(shù)據(jù)庫的增、刪、改、查操作 156
實(shí)戰(zhàn)技能51:數(shù)字匹配 161
實(shí)戰(zhàn)技能52:找出歌手及其作品 164
實(shí)戰(zhàn)技能53:爬取新浪新聞 172
實(shí)戰(zhàn)技能54:QQ空間的秘密 175
實(shí)戰(zhàn)技能55:爬取天氣預(yù)報(bào) 180
實(shí)戰(zhàn)技能56:GUI計(jì)算器制作 186
實(shí)戰(zhàn)技能57:SMTP發(fā)送郵件 191
實(shí)戰(zhàn)技能58:基于Flask框架的商品銷售管理系統(tǒng) 194
實(shí)戰(zhàn)技能59:基于Django框架制作個(gè)人博客 201
實(shí)戰(zhàn)技能60:俄羅斯方塊 209
實(shí)戰(zhàn)技能61:會聊天的小機(jī)器人 216
第4章 Python數(shù)據(jù)分析的關(guān)鍵技能 220
實(shí)戰(zhàn)技能62:NumPy的基本操作 221
實(shí)戰(zhàn)技能63:SciPy的基本操作 229
實(shí)戰(zhàn)技能64:常用圖形的繪制 239
實(shí)戰(zhàn)技能65:顯示海底地震的數(shù)據(jù) 243
實(shí)戰(zhàn)技能66:巖石VS水雷數(shù)據(jù)集的統(tǒng)計(jì)與分析 246
實(shí)戰(zhàn)技能67:超市銷售數(shù)據(jù)分析 250
實(shí)戰(zhàn)技能68:數(shù)據(jù)挖掘與數(shù)據(jù)的抽樣 254
實(shí)戰(zhàn)技能69:缺失數(shù)據(jù)分析 257
實(shí)戰(zhàn)技能70:異常數(shù)據(jù)處理 261
實(shí)戰(zhàn)技能71:數(shù)據(jù)集成處理 264
實(shí)戰(zhàn)技能72:數(shù)據(jù)的規(guī)范化處理 267
實(shí)戰(zhàn)技能73:數(shù)據(jù)的離散化處理 269
實(shí)戰(zhàn)技能74:屬性構(gòu)造 272
實(shí)戰(zhàn)技能75:屬性數(shù)據(jù)進(jìn)行規(guī)約化處理 274
實(shí)戰(zhàn)技能76:數(shù)值數(shù)據(jù)進(jìn)行規(guī)約化處理 278
第5章 Python數(shù)據(jù)挖掘的關(guān)鍵技能 283
實(shí)戰(zhàn)技能77:“黑色星期五”顧客信息分析 284
實(shí)戰(zhàn)技能78:確定共享單車的調(diào)度中心 291
實(shí)戰(zhàn)技能79:發(fā)現(xiàn)毒蘑菇的相似特征 300
實(shí)戰(zhàn)技能80:中醫(yī)證型關(guān)聯(lián)規(guī)則挖掘 305
實(shí)戰(zhàn)技能81:使用K近鄰分類算法實(shí)現(xiàn)約會網(wǎng)站的配對效果 309
實(shí)戰(zhàn)技能82:手寫識別系統(tǒng) 315
實(shí)戰(zhàn)技能83:使用樸素貝葉斯算法進(jìn)行文檔分類 318
實(shí)戰(zhàn)技能84:基于樸素貝葉斯算法的垃圾郵件分類 324
實(shí)戰(zhàn)技能85:從個(gè)人廣告中獲取區(qū)域趨向 330
實(shí)戰(zhàn)技能86:使用決策樹算法預(yù)測隱形眼鏡類型 335
實(shí)戰(zhàn)技能87:判斷銀行是否放貸 348
實(shí)戰(zhàn)技能88:基于SVM的股票預(yù)測 354
實(shí)戰(zhàn)技能89:學(xué)生成績預(yù)測 359
實(shí)戰(zhàn)技能90:檢測未爆炸的水雷 363
實(shí)戰(zhàn)技能91:分類犯罪現(xiàn)場的玻璃樣本 370
實(shí)戰(zhàn)技能92:從疝氣病癥預(yù)測馬的死亡率 375
實(shí)戰(zhàn)技能93:紅酒品質(zhì)預(yù)測 379
實(shí)戰(zhàn)技能94:新聞關(guān)鍵詞提取 388
實(shí)戰(zhàn)技能95:新聞?wù)槿?397
實(shí)戰(zhàn)技能96:電商產(chǎn)品評論數(shù)據(jù)情感分析 401
實(shí)戰(zhàn)技能97:圖像特征提取 409
實(shí)戰(zhàn)技能98:模仿世界名畫作畫 414
實(shí)戰(zhàn)技能99:財(cái)政收入影響因素分析及預(yù)測 423
實(shí)戰(zhàn)技能100:識別偷稅漏稅行為 434
附錄A:Python的安裝與環(huán)境配置 443
A.1 Python的官方安裝 444
A.2 Anaconda的安裝與運(yùn)行 449
附錄B:Python開發(fā)工具的安裝 456
B.1 Jupyter Notebook安裝 457
B.2 PyCharm安裝 461