|
-- 會員 / 註冊 --
|
|
|
|
Python學習手冊 第4版 ( 簡體 字) |
作者:魯特茲 | 類別:1. -> 程式設計 -> Python |
譯者: |
出版社:機械工業出版社 | 3dWoo書號: 33810 詢問書籍請說出此書號!【缺書】 NT售價: 595 元 |
出版日:4/1/2011 |
頁數:889 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787111326533 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言: |
內容簡介: |
目錄:前言 第一部分 使用入門 第1章 問答環節 人們為何使用Python 軟體品質 開發效率 Python是“指令碼語言”嗎 好吧,Python的缺點是什麼呢 如今誰在使用Python 使用Python可以做些什麼 系統程式設計 使用者圖形介面 Internet腳本 組件集成 資料庫程式設計 快速原型 數值計算和科學計算程式設計 遊戲、圖像、人工智慧、XML、機器人等 Python如何獲得支持 Python有哪些技術上的優點 物件導向 免費 可移植 功能強大 可混合 簡單易用 簡單易學 Python和其他語言比較起來怎麼樣 本章小結 本章習題 習題解答 Python是工程,不是藝術
第2章 Python如何運行程式 Python解譯器簡介 程式執行 程式師的視角 Python的視角 執行模組的變體 Python實現的替代者 執行優化工具 凍結二進位檔案 其他執行選項 未來的可能性 本章小結 本章習題 習題解答
第3章 如何運行程式 交互提示模式下編寫代碼 交互地運行代碼 為什麼使用交互提示模式 使用交互提示模式 系統命令列和檔 第一段腳本 使用命令列運行檔 使用命令列和檔 UNIX可執行腳本(#!) UNIX env查找技巧 點擊檔圖示 在Windows中點擊圖示 input的技巧 圖示點擊的其他限制 模組導入和重載 模組的顯要特性:屬性 import和reload的使用注意事項 使用exec運行模組檔 IDLE使用者介面 IDLE基礎 使用IDLE 高級IDLE工具 其他的IDE 其他啟動選項 嵌入式調用 凍結二進位的可執行性 文字編輯器啟動的選擇 其他的啟動選擇 未來的可能 我應該選用哪種 調試Python代碼 本章小結 本章習題 習題解答 第一部分 練習題
第二部分 類型和運算 第4章 介紹Python物件類型 為什麼使用內置類型 Python的核心資料類型 數字 字串 序列的操作 不可變性 類型特定的方法 尋求幫助 編寫字串的其他方法 模式匹配 列表 序列操作 類型特定的操作 邊界檢查 嵌套 列表解析 字典 映射操作 重訪嵌套 鍵的排序:for 迴圈 反覆運算和優化 不存在的鍵:if 測試 元組 為什麼要用元組 文件 其他文件類工具 其他核心類型 如何破壞代碼的靈活性 用戶定義的類 剩餘的內容 本章小結 本章習題 習題解答
第5章 數字 Python的數位類型 數字常量 內置數學工具和擴展 Python運算式操作符 在實際應用中的數字 變數和基本的運算式 數字顯示的格式 比較:一般的和連續的 str和repr顯示格式 除法: 傳統除法、Floor除法和真除法 整數精度 複數 十六進位、八進制和二進位記數 位操作 其他的內置數學工具 其他數位類型 小數數字 分數類型 集合 布林型 數字擴展 本章小結 本章習題 習題解答
第6章 動態類型簡介 缺少型別宣告語句的情況 變數、物件和引用 類型屬於物件,而不是變數 對象的垃圾收集 共用引用 共用引用和在原處修改 共用引用和相等 動態類型隨處可見 本章小結 本章習題 習題解答
第7章 字串 字串常量 單雙引號字串是一樣的 用轉義序列代表特殊位元組 raw字串抑制轉義 三重引號編寫多行字串塊 實際應用中的字串 基本操作 索引和分片 為什麼要在意:分片 字串轉換工具 修改字串 字串方法 字串方法實例:修改字串 字串方法實例:文本解析 實際應用中的其他常見字串方法 最初的字串模組(在Python 3.0中刪除) 字串格式化運算式 更高級的字串格式化運算式 基於字典的字串格式化 字串格式化調用方法 基礎知識 添加鍵、屬性和偏移量 添加具體格式化 與%格式化運算式比較 為什麼用新的格式化方法 通常意義下的類型分類 同樣分類的類型共用其操作集合 可變類型能夠在原處修改 本章小結 本章習題 習題解答
第8章 清單與字典 列表 實際應用中的列表 基本列表操作 列表反覆運算和解析 索引、分片和矩陣 原處修改列表 字典 實際應用中的字典 字典的基本操作 原處修改字典 其他字典方法 語言表 字典用法注意事項 為什麼要在意字典介面 創建字典的其他方法 Python 3.0中的字典變化 本章小結 本章習題 習題解答
第9章 元組、文件及其他 元組 實際應用中的元組 為什麼有了列表還要元組 文件 打開文件 使用檔 實際應用中的文件 其他文件工具 重訪類型分類 為什麼要在意操作符重載 對象靈活性 引用 VS 拷貝 比較、相等性和真值 Python 3.0的字典比較 Python中真和假的含義 Python的類型層次 Type對象 Python中的其他類型 內置類型陷阱 賦值生成引用,而不是拷貝 重複能夠增加層次深度 留意迴圈資料結構 不可變類型不可以在原處改變 本章小結 本章習題 習題解答 第二部分練習題
第三部分 語句和語法 第10章 Python語句簡介 重訪Python程式結構 Python的語句 兩個if的故事 Python增加了什麼 Python刪除了什麼 為什麼使用縮進語法 幾個特殊實例 簡短實例:交互迴圈 一個簡單的互動式迴圈 對使用者輸入資料做數學運算 用測試輸入資料來處理錯誤 用try語句處理錯誤 嵌套代碼三層 本章小結 本章習題 習題解答
第11章 賦值、運算式和列印 設定陳述式 設定陳述式的形式 序列賦值 Python 3.0中的擴展序列解包 多目標設定陳述式 增強設定陳述式 變數命名規則 Python的廢棄協議 運算式語句 運算式語句和在原處的修改 列印操作 Python 3.0的print函數 Python 2.6 print語句 列印流重定向 版本獨立的列印 為什麼要注意print和stdout 本章小結 本章習題 習題解答
第12章 if測試和語法規則 if語句 通用格式 基本例子 多路分支 Python語法規則 代碼塊分隔符號 語句的分隔符號 一些特殊情況 真值測試 if/else三元運算式 為什麼要在意布林值 本章小結 本章習題 習題解答
第13章 while和for迴圈 while迴圈 一般格式 例子 break、continue、pass和迴圈else 一般迴圈格式 pass continue break 迴圈else 為什麼要在意“類比C 語言的while迴圈” for迴圈 一般格式 例子 為什麼要在意“檔掃描” 編寫迴圈的技巧 迴圈計數器:while和range 非完備遍歷:range和分片 修改列表:range 並行遍歷:zip和map 產生偏移和元素:enumerate 本章小結 本章習題 習題解答
第14章 反覆運算器和解析,第一部分 反覆運算器:初探 文件反覆運算器 手動反覆運算:iter和next 其他內置類型反覆運算器 列表解析:初探 列表解析基礎知識 在檔上使用列表解析 擴展的清單解析語法 其他反覆運算環境 Python 3.0中的新的可反覆運算物件 range反覆運算器 map、zip和filter反覆運算器 多個反覆運算器 VS單個反覆運算器 字典視圖反覆運算器 其他反覆運算器主題 本章小結 本章習題 習題解答
第15章 文檔 Python文檔資源 #注釋 dir函數 文檔字串:__doc__ PyDoc:help函數 PyDoc:HTML報表 標準手冊集 網路資源 已出版的書籍 常見編寫代碼的陷阱 本章小結 本章習題 習題解答 第三部分練習題
第四部分 函數 第16章 函數基礎 為何使用函數 編寫函數 def語句 def語句是即時執行的 第一個例子:定義和調用 定義 調用 Python中的多態 第二個例子:尋找序列的交集 定義 調用 重訪多態 本地變數 本章小結 本章習題 習題解答
第17章 作用域 Python作用域基礎 作用域法則 變數名解析:LEGB原則 作用域實例 內置作用域 在Python 2.6中違反通用性 global語句 最小化全域變數 最小化檔間的修改 其他訪問全域變數的方法 作用域和嵌套函數 嵌套作用域的細節 嵌套作用域舉例 nonlocal語句 nonlocal基礎 nonlocal應用 為什麼使用nonlocal 本章小結 本章習題 習題解答
第18章 參數 傳遞參數 參數和共用引用 避免可變參數的修改 對參數輸出進行模擬 特定的參數匹配模型 基礎知識 匹配語法 細節 關鍵字參數和預設參數的實例 任意參數的實例 Python 3.0 Keyword-Only參數 min調用 滿分 加分點 結論 一個更有用的例子:通用set函數 類比Python 3.0 print函數 使用Keyword-Only參數 為什麼要在意:關鍵字參數 本章小結 本章習題 習題解答
第19章 函數的高級話題 函數設計概念 遞迴函數 用遞迴求和 編碼替代方案 迴圈語句VS遞迴 處理任意結構 函數物件:屬性和注解 間接函式呼叫 函數內省 函數屬性 Python 3.0中的函數注解 匿名函數: lambda lambda運算式 為什麼使用lambda 如何(不要)讓Python代碼變得晦澀難懂 嵌套lambda和作用域 為什麼要在意:回檔 在序列中映射函數:map 函數式程式設計工具:filter和reduce 本章小結 本章習題 習題解答
第20章 反覆運算和解析,第二部分 回顧列表解析:函數式程式設計工具 列表解析與map 增加測試和嵌套迴圈 列表解析和矩陣 理解列表解析 為什麼要在意:列表解析和map 重訪反覆運算器:生成器 生成器函數:yield VS return 生成器運算式:反覆運算器遇到列表解析 生成器函數 VS 生成器運算式 生成器是單反覆運算器對象 用反覆運算工具模擬zip和map 為什麼你會留意:單次反覆運算 內置類型和類中的值生成 Python 3.0解析語法概括 解析集合和字典解析 針對集合和字典的擴展的解析語法 對反覆運算的各種方法進行計時 對模組計時 計時腳本 計時結果 計時模組替代方案 其他建議 函數陷阱 本地變數是靜態檢測的 預設和可變對象 沒有return語句的函數 嵌套作用域的迴圈變數 本章小結 本章習題 習題解答 第四部分練習題 第五部分 模組
第21章 模組:宏偉藍圖 為什麼使用模組 Python程式架構 如何組織一個程式 導入和屬性 標準庫模組 import如何工作 1.搜索 2.編譯(可選) 3.運行 模組搜索路徑 配置搜索路徑 搜索路徑的變動 sys.path列表 模組檔選擇 高級的模組選擇概念 協力廠商工具:distutils 本章小結 本章習題 習題解答
第22章 模組代碼編寫基礎 模組的創建 模組的使用 import語句 from語句 from *語句 導入只發生一次 import和from是設定陳述式 檔間變數名的改變 import和from的對等性 from語句潛在的陷阱 模組命名空間 檔生成命名空間 屬性名的點號運算 導入和作用域 命名空間的嵌套 重載模組 reload基礎 reload實例 為什麼要在意:模組重載 本章小結 本章習題 習題解答 第23章 模組包 包導入基礎 包和搜索路徑設置 __init__.py包文件 包導入實例 包對應的from語句和import語句 為什麼要使用包導入 三個系統的傳說 包相對導入 Python 3.0中的變化 相對導入基礎知識 為什麼使用相對導入 相對導入的作用域 模組查找規則總結 相對導入的應用 為什麼要在意:模組包 本章小結 本章習題 習題解答
第24章 高級模組話題 在模組中隱藏資料 最小化from *的破壞:_X和__all__ 啟用以後的語言特性 混合用法模式:__name__和__main__ 以__name__進行單元測試 使用帶有__name__的命令列參數 修改模組搜索路徑 Import語句和from語句的as擴展 模組是物件:元程式 用名稱字串導入模組 過渡性模組重載 模組設計理念 模組陷阱 頂層代碼的語句次序的重要性 from複製變數名,而不是連接 from *會讓變數語義模糊 reload不會影響from導入 reload、from以及交互模式測試 遞迴形式的from導入無法工作 本章小結 本章習題 習題解答 第五部分練習題 第六部分 類和OOP
第25章 OOP:宏偉藍圖 為何使用類 概覽OOP 屬性繼承搜索 類和實例 類方法調用 編寫類樹 OOP是為了代碼重用 本章小結 本章習題 習題解答
第26章 類代碼編寫基礎 類產生多個實例物件 類物件提供預設行為 實例物件是具體的元素 第一個例子 類通過繼承進行定制 第二個例子 類是模組內的屬性 類可以截獲Python運算子 第三個例子 為什麼要使用運算子重載 世界上最簡單的Python類 類與字典的關係 本章小結 本章習題 習題解答
第27章 更多實例 步驟1:創建實例 編寫構造函數 在進行中測試 以兩種方式使用代碼 版本差異提示 步驟2:添加行為方法 編寫方法 步驟3:運算子重載 提供列印顯示 步驟4:通過子類定制行為 編寫子類 擴展方法:不好的方式 擴展方法:好的方式 多態的作用 繼承、定制和擴展 OOP:大思路 步驟5:定制構造函數 OOP比我們認為的要簡單 組合類的其他方式 在Python 3.0中捕獲內置屬性 步驟6:使用內省工具 特殊類屬性 一種通用顯示工具 實例與類屬性的關係 工具類的命名考慮 類的最終形式 步驟7(最後一步):把物件存儲到資料庫中 Pickle和Shelve 在shelve資料庫中存儲物件 交互地探索shelve 更新shelve中的物件 未來方向 本章小結 本章習題 習題解答
第28章 類代碼編寫細節 class語句 一般形式 例子 方法 例子 調用超類構造函數 其他方法調用的可能性 繼承 屬性樹的構造 繼承方法的專有化 類介面技術 抽象超類 Python 2.6和Python 3.0的抽象超類 命名空間:完整的內容 簡單變數名:如果賦值就不是全域變數 屬性名稱:物件命名空間 Python命名空間的“禪”:賦值將變數名分類 命名空間字典 命名空間連結 回顧文檔字串 類與模組的關係 本章小結 本章習題 習題解答
第29章 運算子重載 基礎知識 構造函數和運算式:__init__和__sub__ 常見的運算子重載方法 索引和分片:__getitem__和__setitem__ 攔截分片 Python 2.6中的分片和索引 索引反覆運算:__getitem__ 反覆運算器對象:__iter__和__next__ 用戶定義的反覆運算器 有多個反覆運算器的物件 成員關係:__contains__、__iter__和__getitem__ 屬性引用:__getattr__和__setattr__ 其他屬性管理工具 類比實例屬性的私有性:第一部分 __repr__和__str__會返回字串表達形式 右側加法和原處加法:__radd__和__iadd__ 原處加法 Call運算式:__call__ 函數介面和回檔代碼 比較:__lt__、__gt__和其他方法 Python 2.6的__cmp__方法(已經從Python 3.0中移除了) 布林測試:__bool__和__len__ Python 2.6中的布林 物件析構函數:__del__ 本章小結 本章習題 習題解答
第30章 類的設計 Python和OOP 通過調用標記進行重載(或不要) OOP和繼承:“是一個”關係 OOP和組合:“有一個”關係 重訪流處理器 為什麼要在意:類和持續性 OOP和委託:“包裝”對象 類的偽私有屬性 變數名壓縮概覽 為什麼使用偽私有屬性 方法是物件:綁定或無綁定 在Python 3.0中,無綁定方法是函數 綁定方法和其他可調用物件 為什麼要在意:綁定方法和回呼函數 多重繼承:“混合”類 編寫混合顯示類 類是對象:通用對象的工廠 為什麼有工廠 與設計相關的其他話題 本章小結 本章習題 習題解答
第31章 類的高級主題 擴展內置類型 通過嵌入擴展類型 通過子類擴展類型 新式類 新式類變化 類型模式變化 鑽石繼承變動 新式類的擴展 slots實例 類特性 __getattribute__和描述符 元類 靜態方法和類方法 為什麼使用特殊方法 Python 2.6和Python 3.0中的靜態方法 靜態方法替代方案 使用靜態和類方法 使用靜態方法統計實例 用類方法統計實例 裝飾器和元類:第一部分 函數裝飾器基礎 裝飾器例子 類裝飾器和元類 更多詳細資訊 類陷阱 修改類屬性的副作用 修改可變的類屬性也可能產生副作用 多重繼承:順序很重要 類、方法以及嵌套作用域 Python中基於委託的類:__getattr__和內置函數 “過度包裝” 本章小結 本章習題 習題解答
第六部分 練習題 為什麼要在意:大師眼中的OOP 第七部分 異常和工具 第32章 異常基礎 為什麼使用異常 異常的角色 異常處理:簡明扼要 默認異常處理器 捕獲異常 引發異常 用戶定義的異常 終止行為 為什麼要在意:錯誤檢查 本章小結 本章習題 習題解答
第33章 異常編碼細節 try/except/else語句 try語句分句 try/else分句 例子:默認行為 例子:捕捉內置異常 try/finally語句 例子:利用try/finally編寫終止行為 統一try/except/finally語句 統一try語句語法 通過嵌套合併finally和except 合併try的例子 raise語句 利用raise傳遞異常 Python 3.0異常鏈:raise from assert語句 例子:收集約束條件(但不是錯誤) with/as環境管理器 基本使用 環境管理協議 本章小結 本章習題 習題解答
第34章 異常物件 異常:回到未來 字串異常很簡單 基於類的異常 類異常例子 為什麼使用類異常 內置Exception類 內置異常分類 預設列印和狀態 定制列印顯示 定制資料和行為 提供異常細節 提供異常方法 本章小結 本章習題 習題解答
第35章 異常的設計 嵌套異常處理器 例子:控制流程嵌套 例子:語法嵌套化 異常的習慣用法 異常不總是錯誤 函數信號條件和raise 關閉檔和伺服器連接 在try外進行調試 運行進程中的測試 關於sys.exc_info 與異常有關的技巧 應該包裝什麼 捕捉太多:避免空except語句 捕捉過少:使用基於類的分類 核心語言總結 Python工具集 大型專案的開發工具 本章小結 第七部分練習題 第八部分 高級話題注
第36章 Unicode和位元組字串 Python 3.0中的字串修改 字串基礎知識 字元編碼方法 Python的字串類型 文本和二進位檔案 Python 3.0中的字串應用 常量和基本屬性 轉換 編碼Unicode字串 編碼ASCII文本 編碼非ASCII文本 編碼和解碼非ASCII文本 其他Unicode編碼技術 轉換編碼 在Python 2.6中編碼Unicode字串 原始檔案字元集編碼聲明 使用Python 3.0 Bytes物件 方法調用 序列操作 創建bytes物件的其他方式 混合字串類型 使用Python 3.0(和Python 2.6)bytearray物件 使用文字檔和二進位檔案 文字檔基礎 Python 3.0中的文本和二進位模式 類型和內容錯誤匹配 使用Unicode檔 在Python 3.0中讀取和寫入Unicode 在Python 3.0中處理BOM Python 2.6中的Unicode文件 Python 3.0中其他字串工具的變化 re模式匹配模組 Struct二進位資料模組 pickle物件序列化模組 XML解析工具 本章小結 本章習題 習題解答
第37章 管理屬性 為什麼管理屬性 插入在屬性訪問時運行的代碼 特性 基礎知識 第一個例子 計算的屬性 使用裝飾器編寫特性 描述符 基礎知識 第一個示例 計算的屬性 在描述符中使用狀態資訊 特性和描述符是如何相關的 __getattr__和__getattribute__ 基礎知識 第一個示例 計算屬性 __getattr__和__getattribute__比較 管理技術比較 攔截內置操作屬性 重訪基於委託的Manager 示例:屬性驗證 使用特性來驗證 使用描述符驗證 使用__getattr__來驗證 使用__getattribute__驗證 本章小結 本章習題 習題解答
第38章 裝飾器 什麼是裝飾器 管理調用和實例 管理函數和類 使用和定義裝飾器 為什麼使用裝飾器 基礎知識 函數裝飾器 類裝飾器 裝飾器嵌套 裝飾器參數 裝飾器管理函數和類 編寫函數裝飾器 跟蹤調用 狀態資訊保持選項 類錯誤之一:裝飾類方法 計時調用 添加裝飾器參數 編寫類裝飾器 單體類 跟蹤物件介面 類錯誤之二:保持多個實例 裝飾器與管理器函數的關係 為什麼使用裝飾器(重訪) 直接管理函數和類 示例:“私有”和“公有”屬性 實現私有屬性 實現細節之一 公有聲明的泛化 實現細節之二 開放問題 Python不是關於控制 示例:驗證函數參數 目標 針對位置參數的一個基本範圍測試裝飾器 針對關鍵字和默認泛化 實現細節 開放問題 裝飾器參數 VS 函數注解 其他應用程式:類型測試 本章小結 本章習題 習題解答
第39章 元類 要麼是元類,要麼不是元類 提高魔力層次 “輔助”函數的缺點 元類與類裝飾器的關係:第一回合 元類模型 類是類型的實例 元類是Type的子類 Class語句協議 聲明元類 編寫元類 基本元類 定制構建和初始化 其他元類程式設計技巧 實例與繼承的關係 示例:向類添加方法 手動擴展 基於元類的擴展 元類與類裝飾器的關係:第二回合 示例:對方法應用裝飾器 用裝飾器手動跟蹤 用元類和裝飾器跟蹤 把任何裝飾器應用於方法 元類與類裝飾器的關係:第三回合 “可選的”語言功能 本章小結 本章習題 習題解答 第九部分 附錄注 附錄A 安裝和配置 附錄B 各部分練習題的解答
|
序: |
|