python程序设计pdf机械出版_Python程序设计
圖書簡介
本書通過闡述Python語言的基礎知識,以及使用Python語言的實際開發應用實例,來介紹如何使用計算機進行問題求解。豐富的例子和習題展示了在真實世界中是如何使用計算機的。目前Python在軟件產業中已經成為廣泛使用的編程語言之一,對于初學者,Python也是理解計算機程序開發的理想工具。
章節目錄
目 錄
An Introduction to Programming Using Python
出版者的話
譯者序
前言
第1章 計算與問題求解簡介1
1.1 計算與Python簡介1
1.2 程序開發周期3
1.2.1 在計算機上執行任務3
1.2.2 程序規劃4
1.3 編程工具4
1.3.1 流程圖5
1.3.2 偽代碼6
1.3.3 層次結構圖7
1.3.4 判斷結構7
1.3.5 判斷紐約按數字編號街道方向的算法8
1.3.6 循環結構9
1.3.7 班級平均成績算法9
1.4 Python簡介11
1.4.1 啟動IDLE11
1.4.2 Python shell12
1.4.3 Python代碼編輯器13
1.4.4 打開程序15
第2章 核心對象、變量、輸入和輸出19
2.1 數值19
2.1.1 兩種數值類型:整型和浮點型19
2.1.2 算術運算符19
2.1.3 print函數19
2.1.4 變量20
2.1.5 abs、int與round函數21
2.1.6 增量賦值22
2.1.7 其他兩種整型運算符22
2.1.8 括號與優先級23
2.1.9 三種類型的錯誤23
2.1.10 內存中的數值對象24
2.2 字符串29
2.2.1 字符串字面量29
2.2.2 變量30
2.2.3 索引和切片30
2.2.4 反向索引31
2.2.5 切片的默認邊界31
2.2.6 字符串連接32
2.2.7 字符串重復32
2.2.8 字符串函數和方法32
2.2.9 鏈式方法33
2.2.10 input函數33
2.2.11 int、float、eval和str函數33
2.2.12 內部文檔35
2.2.13 行延續35
2.2.14 索引和切片越界35
2.3 輸出42
2.3.1 print的可選參數sep42
2.3.2 print的可選參數end42
2.3.3 轉義序列43
2.3.4 域內輸出對齊43
2.3.5 使用format方法對齊輸出44
2.4 列表、元組和文件50
2.4.1 列表對象50
2.4.2 切片51
2.4.3 split和join方法52
2.4.4 文本文件53
2.4.5 元組對象54
2.4.6 嵌套列表55
2.4.7 不可變和可變對象55
2.4.8 列表復制56
2.4.9 索引、刪除和切片越界56
關鍵術語和概念62
編程項目64
第3章 控制流結構67
3.1 關系和邏輯運算符67
3.1.1 ASCII值67
3.1.2 關系運算符68
3.1.3 列表元素的排序69
3.1.4 邏輯運算符70
3.1.5 短路求值71
3.1.6 布爾數據類型72
3.1.7 三種返回布爾值的方法72
3.1.8 簡化條件73
3.2 判斷結構77
3.2.1 if-else語句78
3.2.2 if語句79
3.2.3 嵌套的if-else 語句80
3.2.4 elif子句81
3.2.5 使用if-elif-else語句的輸入驗證83
3.2.6 True和False84
3.3 while循環92
3.3.1 while循環92
3.3.2 break 語句95
3.3.3 continue語句95
3.3.4 創建菜單96
3.3.5 無限循環97
3.4 for循環103
3.4.1 等差數列的循環遍歷103
3.4.2 range函數的步長值105
3.4.3 for循環的嵌套106
3.4.4 字符串中字符的循環遍歷107
3.4.5 遍歷列表或元組元素的循環遍歷107
3.4.6 文本文件的行循環遍歷109
3.4.7 pass語句110
3.4.8 使用文本文件的內容創建列表110
關鍵術語和概念120
編程項目121
第4章 函數125
4.1 函數(第一部分)125
4.1.1 內建函數125
4.1.2 用戶自定義函數125
4.1.3 具有一個參數的函數126
4.1.4 向函數傳值127
4.1.5 具有多個參數的函數128
4.1.6 返回布爾型或列表型的函數130
4.1.7 無返回值的函數131
4.1.8 無參數的函數132
4.1.9 變量作用域133
4.1.10 命名常量134
4.1.11 庫模塊135
4.2 函數(第二部分)144
4.2.1 調用其他函數的函數144
4.2.2 返回多個值的函數144
4.2.3 列表解析146
4.2.4 默認值147
4.2.5 按參數名傳遞147
4.2.6 自定義排序149
4.2.7 Lambda表達式150
4.2.8 sorted函數150
4.3 程序設計160
4.3.1 自頂向下的設計160
4.3.2 結構化編程162
4.3.3 結構化編程的優勢162
4.3.4 面向對象編程163
4.3.5 相關引用163
關鍵術語和概念163
編程項目165
第5章 數據處理168
5.1 數據處理(第一部分)168
5.1.1 讀取文本文件168
5.1.2 創建文本文件170
5.1.3 向已有文本文件中添加行173
5.1.4 修改文本文件中的元素173
5.1.5 集合174
5.1.6 集合推導175
5.1.7 集合論方法175
5.1.8 在文件中使用集合論的方法175
5.2 數據處理(第二部分)183
5.2.1 CSV文件183
5.2.2 訪問CSV文件中的數據183
5.2.3 使用列表分析CSV文件中的數據184
5.2.4 分析數值數據185
5.2.5 Excel和CSV文件186
5.3 字典195
5.3.1 字典195
5.3.2 dict函數197
5.3.3 從文本文件中創建字典198
5.3.4 使用字典作為頻率表199
5.3.5 在二進制文件中存儲字典200
5.3.6 值為字典的字典201
5.3.7 從字典中獲取順序數據202
5.3.8 使用元組作為字典的鍵203
5.3.9 字典推導204
關鍵術語和概念209
編程項目211
第6章 其他主題216
6.1 異常處理216
6.1.1 異常216
6.1.2 try語句217
6.1.3 else與finally子句218
6.2 生成隨機數223
6.2.1 random模塊中的函數223
6.2.2 機會游戲223
6.3 海龜圖229
6.3.1 坐標 229
6.3.2 turtle模塊中的方法229
6.3.3 矩形230
6.3.4 旗幟232
6.3.5 write方法233
6.3.6 柱狀圖234
6.3.7 折線圖235
6.4 遞歸239
6.4.1 遞歸的指數計算函數239
6.4.2 遞歸的回文生成函數241
6.4.3 遞歸的分形計算函數241
關鍵術語和概念246
編程項目247
第7章 面向對象編程250
7.1 類與對象250
7.1.1 內建類250
7.1.2 用戶自定義類250
7.1.3 初始化方法的其他形式253
7.1.4 類定義中方法的數量253
7.1.5 對象列表255
7.2 繼承262
7.2.1 學期成績類262
7.2.2 is-a關系264
7.2.3 isinstance函數264
7.2.4 向子類中添加新的實例變量265
7.2.5 覆蓋方法266
7.2.6 多態268
關鍵術語和概念273
編程項目274
第8章 圖形用戶界面276
8.1 控件276
8.1.1 什么是圖形用戶界面276
8.1.2 按鈕控件277
8.1.3 標簽控件278
8.1.4 輸入控件279
8.1.5 只讀輸入控件280
8.1.6 列表框控件281
8.1.7 滾動條控件283
8.2 網格布局管理器288
8.2.1 網格288
8.2.2 sticky屬性290
8.2.3 向列表框添加垂直滾動條290
8.2.4 設計窗體布局291
8.3 編寫GUI程序295
8.3.1 將TUI程序改寫成GUI程序295
8.3.2 將文件加載到列表框中297
8.3.3 用面向對象方式編寫GUI程序298
關鍵術語和概念302
編程項目304
附錄A ASCII值306
附錄B 保留字308
附錄C 安裝Python和IDLE309
奇數編號習題答案311
索引359
前 言An Introduction to Programming Using Python自20世紀90年代誕生以來,Python已經成為軟件行業中應用最為廣泛的編程語言之一。學習第一門編程語言的學生也發現,Python是理解計算機程序開發的理想工具。
這本書的寫作目標如下:
1. 重點突出。集中介紹重要的主題,而不是泛泛地覆蓋許多主題。
2. 使用學生耳熟能詳的例子和相關習題。經常使用真實的數據。例子簡潔明了,盡量向學生展示編程技術,而不去分散他們的注意力。
3. 通俗易懂,內容豐富。首先討論每個主題的要點,然后再以注釋的形式展示次要的細節。
4. 教授好的編程實踐,與現代編程方法相接軌。全面討論問題求解技術、結構化編程以及面向對象編程。
5. 深入介紹計算機的主要應用。
本書特色編程項目。從第2章開始,每章都包含編程項目。編程項目反映了計算機的不同使用方法。數量多、難度不一的編程項目使本書適用于不同興趣和層次的學生。后面章節的一些編程項目可以留作學期末項目。
大多數章節的習題。教授編程的每個章節都有一個習題集。這些習題既可以增強學生對這些章節關鍵思想的理解,又為學生探索更多的應用提出了挑戰。大部分習題集需要學生跟蹤程序、找到錯誤以及編寫程序。本書中,除了6.3節以及第8章外,奇數編號習題的答案在本書的最后給出。幾乎每個編程習題以及編程項目都配有一個可能的輸出。
實踐問題。在每節的習題之前,都有一些精選的實踐問題。習題后面是完備的答案。實踐問題經常集中于那些可能易混淆的要點上,在學生深入思考之后,就會透徹理解這些要點。在做習題之前,讀者應該認真地試著解一下這些實踐問題并且研究它們的答案。
注釋。在每節最后,都有一些擴展以及新的主題,它們被置于“注釋”部分,以便這些內容不會影響行文的流暢性。
關鍵術語和概念。在第2章到第8章中,在每章的最后給出關鍵術語和概念(以及示例)。
應用問題指南。該部分提供了程序的索引,討論多種主題,包括商務、經濟、數學以及體育。
解題手冊。學生解題手冊包括奇數編號習題的答案(不包括編程項目的答案)。教師解題手冊包括所有習題和編程項目的答案。兩本解題手冊都是PDF格式的,并且能夠從Pearson的網站上下載。
源代碼和數據文件。全部示例的程序以及習題所需的數據文件都能從Pearson的網站上下載。
教師和學生資源教師資源測試項文件PPT課件教師解題手冊所有示例的程序以及習題和編程項目的答案(習題所需的數據文件在Programs文件夾下)學生資源學生解題手冊示例的程序(習題所需的數據文件在Programs文件夾下)致謝在本書寫作過程中,許多優秀的研究者和程序員給予了富有建設性的意見和建議,我由衷地對他們的貢獻表示感謝。以下審閱者為本書的編寫提供了大量有價值的建議:
Daniel Solarek, 托萊多大學David M. Reed, 首都大學Debraj De, 佐治亞州Desmond Chun, 夏波學院Mark Coffey, 科羅拉多礦業大學Randall Alexander, 查爾斯頓學院Vineyak Tanksale, 鮑爾州立大學Zhi Wei, 新澤西理工學院很多人為本書的成功出版提供了幫助。我要感謝Pearson的團隊,本書的出版離不開他們的支持和鼓勵,特別要感謝計算機科學部門程序管理經理Carole Synyder,計算機科學部門編輯助理Kelsey Loanes和產品經理主管Scott Disanno。
我要感謝Jacob Saina在本書編寫過程中各個階段的幫助。出版編輯Pavithra Jayapaul和Greg Dulles為本書的出版做了許多工作,使之能按計劃推進。我要感謝阿克倫大學的Kathy Liszka博士,他為本書制作了題庫,感謝萊托諾大學的Steve Armstrong博士,他為本書制作了配套的PPT課件。本書在出版過程中也離不開來自Jouve India的Shylaja Gattupalli的幫助。
特別要感謝我的主編Tracy Johnson。她的想法和熱情為本書的籌備工作提供了巨大的幫助。
David I. Schneiderdis@alum.mit.edu
圖書評論
總結
以上是生活随笔為你收集整理的python程序设计pdf机械出版_Python程序设计的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电子科技大学《图论及其应用》复习总结--
- 下一篇: websocket python爬虫_p