Python應用基礎

謝志龍 李 慶 著

  • 出版商: 機械工業
  • 出版日期: 2021-07-01
  • 定價: $294
  • 售價: 8.5$250
  • 語言: 簡體中文
  • 頁數: 268
  • 裝訂: 平裝
  • ISBN: 711168513X
  • ISBN-13: 9787111685135
  • 下單後立即進貨 (約4週~6週)

商品描述

本書並非單純地教授學生學習Python的語法、記憶枯燥的程序代碼,而是從語言邏輯角度,將學生置身於一個真實的應用場景中,培養學生的計算思維方式,以解決真實的問題。本書還將Python基礎知識點巧妙地融入該管理程序的不同部分,在每一章開始時,按照該章節的知識點,依據生活費管理問題設計引導案例,首先提出問題,然後介紹解決問題的知識點,最後給出解決問題的程序代碼。

在當今大數據時代,雲計算、機器學習、人工智能等新技術層出不窮。對於當代大學生來說,掌握一門程序設計語言、學會與數據打交道,以及能夠利用電腦基礎應用處理和分析海量數據已成為必備技能。由於文科類學生,特別是財經類學生有著區別於工科學生的學習曲線,因此他們對程序設計語言的接受度有所不同。而Python是一種解釋型的、面向對象的帶有動態語意的高級程序設計語言,它正因簡潔、功能強大、跨平臺、豐富的第三方庫支持和免費等特點而得到各行各業人士的青睞。
本書特點:
案例驅動。利用大學生生活中普遍存在的生活費管理問題支撐著整本書的框架,案例真實。
代碼更加Pythonic。Python與其他語言相比,更加容易學習和使用。
體例新穎。本書基礎篇包含應掌握的基礎知識,提高篇介紹更高階的程序設計概念,數據分析篇介紹運用Python程序語言進行海量數據的處理和分析。
教輔豐富。本書提供豐富的教輔和在線資源,比如PPT、Jupyter Notebook等形式的電子資料和源碼,以及中國大學MOOC的在線配套課程等。
本書可作為人工智能、信息管理與信息系統、數據科學與大數據技術、大數據管理與應用等專業本科生和包括MBA、MEM在內的經濟管理類研究生的教材,也可作為相關從業人員的參考讀物。

作者簡介

謝志龍
西南財經大學副教授,博士,碩士生導師,信息技術教學研究中心副主任。
在國際期刊和會議上發表數十篇高質量論文,主研國家自然科學基金項目、科技部重大項目、教育部人文社會科學項目等數十個。長期從事計算機基礎、機器學習、金融智能等課程的教學工作。
帶隊參加中國大學生計算機設計大賽等國內外比賽,具有很強的實踐能力。


李 慶
西南財經大學教授,博士生導師,金融智能與金融工程省重點實驗室主任,UC Berkeley國際風險分析大數據聯盟董事,入選多項省部級高層次人才支持計劃。在ACM TOIS、IE

目錄大綱

前言
第一部分 基礎篇
第1章 概述 / 2
1.1 為什麽要學習程序設計 / 2
1.2 程序設計語言 / 3
1.3 Python概述 / 5
1.3.1 使用Python的理由 / 5
1.3.2 Python可以做什麽 / 6
1.4 Python開發和運行環境 / 7
1.4.1 安裝使用標準Python / 7
1.4.2 使用IDLE開發 / 10
1.4.3 使用Anaconda開發 / 11
小結 / 12
練習 / 12
第2章 Python基本操作 / 14
2.1 利用變量收集數據 / 15
2.2 利用表達式處理數據 / 16
2.2.1 Python中的表達式 / 16
2.2.2 案例:國內生產總值增長趨勢分析 / 17
2.3 常用的數字類型 / 18
2.3.1 整型 / 19
2.3.2 浮點型 / 19
2.3.3 數字類型的轉換 / 20
2.3.4 案例:股票價格增長率與漲跌幅的計算 / 20
2.4 字符串 / 21
2.4.1 字符串基本概念 / 21
2.4.2 字符串與數值類型的轉換str()函數 / 24
2.4.3 字符串的拼接與重復 / 24
2.4.4 獲取字符串長度len()函數 / 25
2.4.5 字符串格式化format()方法 / 25
2.4.6 字符串其他常用方法 / 27
2.4.7 打印輸出print()函數 / 27
2.4.8 獲取用戶輸入input()函數 / 28
2.4.9 案例:等額本息還款法每月還款額的計算 / 28
2.5 布爾類型、邏輯運算與關系運算 / 29
2.5.1 布爾類型 / 29
2.5.2 邏輯運算 / 30
2.5.3 關系運算 / 30
2.6 常用內置函數 / 31
2.7 導入模塊 / 32
2.8 綜合案例:我國人口增長率變化分析 / 33
小結 / 36
練習 / 36
第3章 列表和元組 / 37
3.1 序列類型概述 / 38
3.2 通用序列類型操作 / 39
3.2.1 索引 / 39
3.2.2 分片 / 41
3.2.3 使用連接“+”和重復“*” / 42
3.2.4 使用in和not in判斷 / 43
3.2.5 使用count計算元素出現次數 / 43
3.3 最靈活的序列類型:列表 / 43
3.3.1 創建列表 / 44
3.3.2 列表基本操作 / 45
3.3.3 列表常用方法 / 46
3.3.4 案例:復利計算 / 51
3.4 不可變的序列類型:元組 / 53
3.4.1 創建元組 / 53
3.4.2 多重賦值 / 53
3.4.3 元組特性 / 54
3.4.4 為什麽需要元組 / 55
小結 / 56
練習 / 57
第4章 控制結構 / 58
4.1 語句和代碼塊 / 59
4.2 條件表達式 / 60
4.3 if分支結構 / 61
4.3.1 單分支結構:if語句 / 61
4.3.2 雙分支結構:else子句 / 62
4.3.3 多分支結構:elif子句 / 63
4.3.4 三元表達式:if/else / 63
4.3.5 案例:匯率換算 / 64
4.4 while循環結構 / 65
4.5 for循環結構 / 66
4.6 break、continue和else語句 / 67
4.7 循環的應用 / 70
4.7.1 使用range函數遍歷 / 70
4.7.2 列表推導式 / 70
4.7.3 並列遍歷:zip函數 / 72
4.7.4 簡單循環的替身:map函數 / 73
4.7.5 序號和元素都需要時應用enumerate函數 / 73
4.8 案例:等額本金還款 / 74
小結 / 76
練習 / 76
第5章 字典和集合 / 78
5.1 字典及基本操作 / 79
5.1.1 創建字典 / 80
5.1.2 訪問字典的值 / 81
5.1.3 修改字典的值 / 81
5.1.4 添加鍵值對 / 81
5.1.5 刪除鍵值對 / 82
5.2 字典的常用方法 / 82
5.2.1 keys()、values()和items()方法 / 82
5.2.2 避免鍵不存在錯誤的方法get()和setdefault() / 83
5.2.3 pop()、popitem()和clear()方法 / 84
5.2.4 字典的格式化字符串 / 84
5.2.5 字典嵌套 / 84
5.2.6 字典推導式 / 85
5.3 案例:人事統計 / 85
5.4 集合及基本操作 / 87
5.4.1 創建集合 / 87
5.4.2 利用集合去重 / 88
5.4.3 交集、並集、差集和補集 / 88
5.5 集合的常用方法 / 89
5.5.1 添加元素 / 89
5.5.2 刪除元素 / 89
5.5.3 集合推導式 / 90
5.6 案例:股票漲跌統計 / 90
5.7 組合數據類型比較 / 92
小結 / 93
練習 / 93
第6章 代碼打包:函數 / 95
6.1 定義和調用函數 / 96
6.2 案例:個人所得稅計算器 / 99
6.3 函數參數 / 101
6.3.1 參數傳遞 / 101
6.3.2 不可變和可變類型參數 / 101
6.3.3 位置參數 / 102
6.3.4 關鍵字參數 / 102
6.3.5 指定默認參數值 / 103
6.3.6 任意數量參數 / 104
6.3.7 解包參數 / 105
6.4 變量作用域 / 106
6.4.1 局部變量 / 107
6.4.2 全局變量 / 107
6.4.3 同名的局部變量和全局變量 / 108
6.4.4 global語句 / 108
6.5 匿名函數lambda / 109
6.5.1 lambda函數定義 / 109
6.5.2 應用一:列表排序 / 110
6.5.3 應用二:映射函數map / 112
6.5.4 應用三:選擇函數filter / 112
6.6 遞歸函數 / 113
6.7 案例:個人貸款計算器 / 115
小結 / 118
練習 / 118
第7章 數據存取:文件 / 120
7.1 文件與路徑 / 121
7.2 文本文件與二進制文件 / 122
7.3 操作文件 / 123
7.3.1 打開文件 / 123
7.3.2 關閉文件 / 124
7.3.3 寫入文本文件 / 124
7.3.4 讀取文本文件 / 126
7.3.5 使用with語句自動管理 / 128
7.4 案例:銷售統計 / 128
7.5 使用pickle存儲Python對象 / 130
7.6 使用JSON格式存儲Python對象 / 132
小結 / 134
練習 / 135
基礎案例綜合解析 / 136
1. 軟件開發流程 / 136
2. 基礎案例項目開發 / 137
第二部分 提高篇
第8章 面向對象編程 / 144
8.1 定義和使用類 / 145
8.2 屬性 / 146
8.2.1 實例屬性 / 146
8.2.2 類屬性 / 147
8.3 方法 / 147
8.3.1 為類添加方法 / 148
8.3.2 利用構造方法初始化 / 149
8.3.3 更多特殊方法 / 150
8.4 高級話題 / 152
8.4.1 繼承 / 152
8.4.2 多態 / 153
8.4.3 封裝 / 154
小結 / 157
練習 / 157
第9章 異常處理 / 158
9.1 try/except/else語句 / 159
9.2 try/finally語句 / 161
9.3 完整try語句 / 162
9.4 raise語句 / 163
9.5 assert語句 / 164
9.6 案例:記錄股票信息 / 164
小結 / 167
練習 / 167
第10章 數據庫應用 / 169
10.1 數據庫簡介 / 170
10.1.1 關系型數據庫 / 170
10.1.2 非關系型數據庫 / 171
10.2 SQLite數據庫 / 171
10.2.1 建立連接 / 173
10.2.2 操作數據 / 173
10.2.3 優化查詢結果 / 176
10.3 Python操作其他關系型數據庫 / 176
10.3.1 操作MySQL數據庫 / 177
10.3.2 操作SQL Server數據庫 / 178
10.3.3 連接Oracle數據庫 / 179
10.4 Python操作MongoDB數據庫 / 179
10.4.1 使用pymongo連接數據庫 / 179
10.4.2 MongoDB數據庫操作 / 180
小結 / 183
練習 / 183
第三部分 數據分析篇
第11章 NumPy基礎 / 186
11.1 多維數組對象ndarray / 187
11.1.1 創建ndarray數組 / 187
11.1.2 ndarray數組的屬性 / 189
11.2 訪問數組元素 / 190
11.2.1 普通索引 / 190
11.2.2 切片 / 191
11.2.3 布爾索引 / 192
11.2.4 花式索引 / 193
11.3 排序 / 193
11.3.1 sort()排序 / 193
11.3.2 argsort()排序 / 194
11.4 數組重塑 / 195
11.4.1 resize()和reshape()方法 / 195
11.4.2 transpose()和swapaxes()方法 / 196
11.4.3 flatten()方法 / 196
11.5 NumPy數組間運算 / 196
11.6 ufunc()通用函數 / 197
小結 / 198
練習 / 198
第12章 Pandas金融數據分析 / 200
12.1 Pandas的數據結構 / 200
12.1.1 Series / 201
12.1.2 DataFrame / 203
12.2 Pandas的常用方法 / 207
12.2.1 索引對象 / 208
12.2.2 重新索引 / 208
12.2.3 刪除指定軸上的項重新索引 / 210
12.2.4 排序 / 210
12.2.5 算術運算和數據對齊 / 211
12.2.6 缺失值檢測和處理 / 213
12.2.7 缺失值刪除 / 213
12.2.8 缺失值填充 / 214
12.2.9 apply函數 / 215
12.2.10 頻數統計 / 216
12.2.11 合並 / 216
12.2.12 數據添加 / 218
12.2.13 分組 / 219
12.2.14 堆疊 / 219
12.3 匯總、計算和描述性統計 / 220
12.4 案例 / 222
小結 / 225
練習 / 225
第13章 Matplotlib數據可視化 / 227
13.1 安裝 / 227
13.2 基本圖表元素 / 228
13.2.1 坐標軸 / 228
13.2.2 圖例 / 230
13.2.3 標註 / 232
13.2.4 能見度 / 233
13.2.5 圖表的保存 / 235
13.3 常見圖形繪制 / 235
13.3.1 散點圖 / 235
13.3.2 折線圖 / 236
13.3.3 柱狀圖 / 237
13.3.4 subplot子圖 / 238
13.4 案例 / 240
小結 / 242
練習 / 242
附錄A Python中的關鍵字 / 244
附錄B 進位制數 / 246
附錄C Python中的字符串常用方法 / 249
附錄D math庫的使用 / 253
參考文獻 / 256