Python開發技術詳解

Python開發技術詳解

《Python開發技術詳解》是機械工業出版社出版的圖書,作者是周偉 宗傑。本書適合python愛好者、大中專院校的學生、社會培訓班的學生以及用python語言進行系統管理、gui開發、web開發、資料庫編程、網路編程的人員使用。

基本信息

內容簡介

python是最流行的動態腳本語言之一。本書共27章,由淺入深、全面系統地介紹了利用python語言進行程式開發的知識和技巧,包括 python的安裝和環境配置、python的基本語法、模組和函式、內置數據結構、字元串和檔案的處理、正則表達式的使用、異常的捕獲和處理、面向對象的語言特性和設計、python的資料庫編程、wxpython庫的使用、html套用、xml套用、django網頁開發框架的使用方法、測試驅動開發模式套用、python進程和執行緒、python系統管理、網路模組、python圖像處理和遊戲開發、python擴展和嵌入以及windows下的 python開發等。為了便於讀者學習,本書每個章節都提供了詳盡的例子,結合實例講解各個知識點。.

作者簡介

周偉,軟體工程師,有著多年的系統軟體和套用軟體開發經驗。熟悉Python、WxPython和Django等語言和開源框架,曾經領導和參與過多個使用Python開發的項目已經用於電力系統維護等行業。.

宗傑,曾參與多個稅務行業項目的開發和產品研發工作,在軟體設計開發等方面具有豐富的經驗,現從事報表產品的研發工作。熱衷子Python技術,套用 Python輔助項目開發。曾在多個項目中套用WxPython、PIL庫開發自動測試程式完成自動化測試,套用Django實現項目中異構資料庫的數據遷移等。

編輯推薦

深入解析Python語言,透析套用開發的方方面面
涵蓋9大套用領域的各類Python框架
詳細講解Python語言的基本要點和基礎類庫
內容覆蓋GUI、資料庫、Web、系統管理、網路編程、圖像處理、遊戲開發等領域
深入講解常用開發框架Django、PyWin32、PyGame、Twisted等框架工具包
通過豐富的典型套用實例,讀者迅速掌握實用技術

目錄

前言.

第一篇python語言基礎知識

第1章python概述

1.1python簡介

1.2python的特徵

1.3第一個python程式

1.4搭建開發環境

1.4.1python的下載和安裝

1.4.2互動式命令行的使用方法

1.5python的開發工具

1.5.1pythonwin的使用方法

1.5.2eclipse ide集成開發環境

1.5.3editplus編輯器環境的配置

1.6不同平台下的python

1.7小結

第2章python的基本語法

2.1python的檔案類型

2.2python的編碼規則

2.2.1命名規則

2.2.2代碼縮進與冒號

.2.2.3模組導入的規範

2.2.4使用空行分隔代碼

2.2.5正確的注釋

2.2.6語句的分隔

2.3變數和常量

2.3.1變數的命名

2.3.2變數的賦值

2.3.3局部變數

2.3.4全局變數

2.3.5常量

2.4數據類型

2.4.1數字類型

2.4.2字元串類型

2.5運算符與表達式

2.5.1算術運算符和算術表達式

2.5.2關係運算符和關係表達式

2.5.3邏輯運算符和邏輯表達式

2.5.4運算符的優先權

2.6小結

第3章python的控制語句

3.1結構化程式設計

3.2條件語句

3.2.1if語句

3.2.2if...elif...else語句

3.2.3if語句的嵌套

3.2.4實現switch語句的功能

3.3循環語句

3.3.1while循環

3.3.2for循環

3.3.3break和continue語句

3.4結構化程式示例

3.5小結

第4章內置數據結構

4.1元組

4.1.1元組的創建

4.1.2元組的訪問

4.1.3元組的遍歷

4.2列表

4.2.1列表的創建

4.2.2列表的使用方法

4.2.3列表的查找、排序與反轉

4.2.4用列表實現堆疊和佇列

4.3字典

4.3.1字典的創建

4.3.2字典的訪問

4.3.3字典的方法

4.3.4字典的排序與複製

4.3.5全局字典——sys.modules模組

4.4序列

4.5小結

第5章模組與函式

5.1python程式的結構

5.2模組

5.2.1模組的創建

5.2.2模組的導入

5.2.3模組的屬性

5.2.4模組的內置函式

2.5自定義包

5.3函式

5.3.1函式的定義

5.3.2函式的參數

5.3.3函式的返回值

5.3.4函式的嵌套

5.3.5遞歸函式

5.3.6lambda函式

5.3.7generator函式

5.4小結

第6章字元串與正則表達式

6.1字元串的操作

6.1.1字元串的格式化

6.1.2字元串的轉義符

6.1.3字元串的合併

6.1.4字元串的截取

6.1.5字元串的比較

6.1.6字元串的反轉

6.1.7字元串的查找和替換

6.1.8字元串與日期的轉換

6.2正則表達式

6.2.1正則表達式簡介

6.2.2使用sys re模組處理正則表達式

6.3小結

第7章檔案的處理

7.1檔案的基本操作

7.1.1檔案的打開或創建

7.1.2檔案的讀取

7.1.3檔案的寫入

7.1.4檔案的刪除

7.1.5檔案的複製

7.1.6檔案的重命名

7.1.7檔案內容的查找和替換

7.1.8檔案的比較

7.1.9配置檔案的訪問

7.2目錄的基本操作

7.2.1目錄的創建與刪除

7.2.2目錄的遍歷

7.3檔案和流

7.3.1python的流對象

7.3.2模擬java的輸入、輸出流

7.4檔案處理示例——檔案屬性瀏覽程式

7.5小結

第8章面向對象編程

8.1面向對象編程概述

8.2類和對象

8.2.1類和對象的區別

8.2.2類的定義

8.2.3對象的創建

8.2.4python對象的體系結構

8.3屬性和方法

8.3.1類的屬性

8.3.2類的方法

8.3.3內部類的使用

8.3.4__init__方法

8.3.5__del__方法

8.3.6垃圾回收機制

8.3.7類的內置方法

8.3.8方法的動態特性

8.4繼承

8.4.1使用繼承

8.4.2抽象類的模擬

8.4.3多態性

8.4.4多重繼承

8.4.5更好的繼承方式

8.5運算符的重載

8.6python與設計模式

8.6.1設計模式簡介

8.6.2設計模式示例——python實現工廠方法

8.7小結

第9章異常處理與程式調試

9.1異常的處理

9.1.1python中的異常

9.1.2try…except的使用方法

9.1.3try…finally的使用方法

9.1.4使用raise拋出異常

9.1.5自定義異常

9.1.6assert語句的使用方法

9.1.7異常信息

9.2使用pythonwin調試程式

9.3使用eclipse for python調試程式

9.3.1新建工程

9.3.2配置調試

9.3.3設定斷點

9.4小結

第10章python 的資料庫編程

10.1python環境下的資料庫編程

10.1.1通過odbc訪問資料庫

10.1.2使用dao對象訪問資料庫

10.1.3使用activex data object訪問資料庫

10.1.4python連線資料庫的專用模組

10.2python的持久化模組

10.2.1用dbhash模組讀寫數據

10.2.2shelve模組讀寫數據

10.3嵌入式資料庫sqlite

10.3.1sqlite的命令行工具

10.3.2使用sqlite3模組訪問sqlite資料庫

10.4小結

第二篇python的gui程式設計

第11章wxpython的開發環境

11.1python所支持的gui開發庫

11.1.1tkinter

11.1.2pygtk

11.1.3pyqt

11.2wxpython介紹

11.2.1下載和安裝wxpython

11.2.2第一個wxpython程式

11.2.3wxpython的封裝:pythoncard

11.3wxpython的開發工具

11.3.1使用wxglade開發wxpython程式

11.3.2使用wxformbuilder開發wxpython程式

11.3.3使用boa?constructor開發wxpython程式

11.4小結

第12章wxpython框架初步

12.1wxpython的程式結構

12.1.1wxpython應用程式的組成

12.1.2wxpython視窗的組成

12.1.3wxpython應用程式的運行過程

12.2wxpython中的事件驅動編程

12.2.1事件驅動的編程模型

12.2.2事件的觸發

12.2.3事件的綁定和處理

12.3wxpython的常用組件

12.3.1對話框

12.3.2工具列

12.3.3狀態欄

12.4小結

第13章wxpython庫中的基本組件

13.1靜態文本框

13.2文本框

13.2.1單行文本框

13.2.2多行文本框

13.3按鈕控制項

13.3.1普通按鈕

13.3.2點陣圖按鈕

13.4單選框

13.4.1單選框的選擇

13.4.2單選框的分組

13.5多選框

13.5.1多選框

13.5.2多選框事件

13.6列表控制項

13.6.1列表框

13.6.2下拉列表

13.6.3可編輯的下拉列表

13.7使用sizers布局組件

13.7.1sizers布局管理器

13.7.2grid sizer布局

13.7.3flex grid sizer布局

13.7.4grid bag sizer布局

13.7.5box sizer布局

13.8小結

第14章wxpython庫中的選單、視窗與對話框控制項

14.1選單

14.1.1創建選單

14.1.2選單的事件

14.1.3多級選單

14.1.4選單的快捷鍵

14.1.5點陣圖選單

14.1.6上下文選單

14.2視窗

14.2.1frame視窗

14.2.2帶工具列和狀態欄的frame視窗

14.2.3mdi視窗

14.2.4miniframe視窗

14.3對話框

14.3.1對話框的創建

14.3.2提示對話框

14.3.3文本輸入對話框

14.3.4特殊對話框

14.3.5視窗與對話框的互動

14.4小結

第15章wxpython庫中的高級控制項

15.1表格控制項

15.1.1表格控制項的創建

15.1.2通過pygridtable創建表格

15.1.3表格控制項的單元格

15.1.4處理單元格的事件

15.2高級列表控制項

15.2.1列表控制項的創建

15.2.2列表控制項的排序

15.2.3帶點陣圖的列表控制項

15.3樹型控制項

15.3.1樹型控制項的創建

15.3.2樹型控制項的事件

15.3.3樹表控制項

15.4定時器控制項

15.5小結

第16章wxpython庫中的高級功能

16.1wxpython下的html顯示

16.1.1html的顯示

16.1.2基於htmlwindow的簡單瀏覽器

16.2wxpython中的xrc

16.2.1使用xrc

16.2.2xrc檔案

16.3剪貼簿的操作

16.3.1wxpython中的剪貼簿對象

16.3.2處理剪貼簿對象

16.3.3剪貼簿操作實例

16.4小結

第三篇python的web開發

第17章python的html套用

17.1html介紹

17.1.1html的歷史

17.1.2sgml、html和xhtml三者的關係

17.1.3html的標籤

17.1.4html的框架組成

17.2url的處理

17.2.1統一資源定位符url

17.2.2url的解析

17.2.3url的拼合

17.2.4url的分解

17.2.5url的編碼與解碼

17.2.6中文的編碼與解碼

17.2.7查詢參數的編碼

17.3cgi的使用

17.3.1cgi介紹

17.3.2獲取cgi環境信息

17.3.3解析用戶的輸入

17.4獲取html資源

17.4.1使用urlopen和urlretrieve獲取http資源

17.4.2分析返回資源的相關信息

17.4.3自定義獲取資源方式

17.4.4使用urllib2模組獲取資源

17.4.5使用httplib模組獲取資源

17.5html文檔的解析

17.5.1使用htmlparser模組

17.5.2sgmllib的html文檔處理

17.5.3html文檔元素的處理

17.5.4使用htmllib處理html文檔

17.6小結

第18章python和xml

18.1xml介紹

18.1.1xml的演進歷史

18.1.2xml的優點和限制

18.1.3xml技術的python支持

18.2xml文檔概覽和驗證

18.2.1xml文檔的基本概念

18.2.2xml文檔的結構良好性驗證..

18.2.3xml文檔的有效性驗證

18.3xml文檔的結構

18.3.1xml的元素和標籤

18.3.2元素的屬性

18.3.3xml的文字

18.3.4字元實體

18.3.5cdata段

18.3.6注釋

18.3.7處理指令

18.3.8xml定義

18.4使用sax處理xml文檔

18.4.1sax介紹

18.4.2sax處理的組成部分

18.5使用dom處理xml文檔

18.5.1dom介紹

18.5.2xml.dom模組中的接口操作

18.5.3對xml文檔的操作

18.6小結

第19章python的web開發——django框架的套用

19.1常見的web開發框架

19.1.1zope

19.1.2turbogears

19.1.3django

19.1.4其他的web開發框架

19.1.5各種開發框架的選擇

19.2mvc模式

19.2.1mvc模式介紹

19.2.2mvc模式的優點和缺點

19.2.3django框架中的mvc

19.3django開發環境的搭建

19.3.1django框架的安裝

19.3.2資料庫的配置

19.4django框架的套用

19.4.1web套用的創建

19.4.2django中的開發伺服器

19.4.3創建資料庫

19.4.4生成django套用

19.4.5創建數據模型

19.4.6url設計

19.4.7創建視圖

19.4.8模板系統

19.4.9發布django項目

19.5django框架的高級套用

19.5.1管理界面

19.5.2生成資料庫數據

19.5.3session功能

19.5.4國際化

19.6小結

第20章敏捷方法學在python中的套用——測試驅動開發

20.1測試驅動開發

20.1.1測試驅動開發模式(tdd)

20.1.2tdd的優勢

20.1.3tdd的使用步驟

20.2unittest測試框架

20.2.1unittest模組介紹

20.2.2構建測試用例

20.2.3構建測試固件

20.2.4組織多個測試用例

20.2.5構建測試套件

20.2.6重構代碼

20.2.7執行測試

20.3使用doctest模組進行測試

20.3.1doctest模組介紹

20.3.2構建可執行文檔

20.3.3執行doctest測試

20.4小結

第四篇python的其他套用

第21章python中的進程和執行緒

21.1進程和執行緒

21.1.1進程和執行緒的概念

21.1.2python中對於進程和執行緒處理的支持

21.2python下的進程編程

21.2.1進程的運行環境

21.2.2創建進程

21.2.3終止進程

21.3使用subprocess模組管理進程

21.3.1使用popen類管理進程

21.3.2調用外部系統命令

21.3.3替代其他進程創建函式

21.4進程間的信號機制

21.4.1信號的處理

21.4.2信號的使用規則

21.5多執行緒概述

21.5.1什麼是多執行緒

21.5.2執行緒的狀態

21.5.3python中的執行緒支持

21.6生成和終止執行緒

21.6.1使用thread模組

21.6.2使用threading.thread類

21.7管理執行緒

21.7.1執行緒狀態轉移

21.7.2主執行緒對子執行緒的控制

21.7.3執行緒中的局部變數

1.8執行緒之間的同步

21.8.1臨界資源和臨界區

21.8.2鎖機制

21.8.3條件變數

21.8.4信號量

21.8.5同步佇列

21.8.6執行緒同步小結

21.9小結

第22章基於python的系統管理

22.1增強的互動式環境ipython

22.1.1ipython介紹

22.1.2ipython的安裝

22.1.3ipython的啟動

22.1.4ipython的環境配置

22.1.5ipython的退出

22.2和ipython的簡單互動

22.2.1ipython中的輸入與輸出

22.2.2輸出提示符的區別

22.2.3輸出提示符不同的原因

22.2.4ipython中的in和out

22.3ipython中的magic函式

22.3.1magic函式的使用和構造

22.3.2目錄管理

22.3.3對象信息的收集

22.4ipython適合於系統管理的特點

22.4.1tab補全

22.4.2歷史記錄功能

22.4.3執行外部的系統命令和運行腳本檔案

22.4.4對象的查看和自省

22.4.5直接編輯代碼

22.4.6設定別名和宏

22.5使用python進行檔案管理

22.5.1檔案的比較

22.5.2檔案的歸檔

22.5.3檔案的壓縮

22.6使用python定時執行任務

22.6.1使用休眠功能

22.6.2使用sched來定時執行任務

22.7小結

23章python和網路編程

23.1網路模型介紹

23.1.1osi簡介

23.1.2tcp/ip簡介

23.2socket套用

23.2.1socket基礎知識

23.2.2socket的工作方式

23.3伺服器端和客戶端通信

23.3.1伺服器端的構建

23.3.2客戶端的構建

23.4異步通信方式

23.4.1使用fork方式

23.4.2使用執行緒方式

23.4.3異步io方式

23.4.4使用asyncore模組

23.5twisted網路框架

23.5.1認識twisted框架

23.5.2twisted框架下伺服器端的實現

23.5.3twisted框架下伺服器端的其他處理

23.6小結

24章常見的python網路套用

24.1使用ftp傳輸檔案

24.1.1ftp的工作原理和python庫的支持

24.1.2ftp的登錄和退出

24.1.3ftp的數據傳輸

24.2使用pop3獲取郵件

24.2.1pop3協定介紹

24.2.2poplib模組的使用方法

24.3使用smtp傳送郵件

24.3.1smtp協定介紹

24.3.2smtplib模組的使用

24.4使用telnet協定遠程登錄

24.4.1telnet協定介紹和python庫的支持

24.4.2telnetlib模組的使用方法

24.5使用snmp管理網路

24.5.1snmp協定的組成

24.5.2pysnmp框架介紹及其使用方法

24.6網路分析

24.6.1網路分析概述

24.6.2使用scapy在網路中抓包分析

24.7小結

第25章圖像處理和遊戲開發

25.1圖像處理的基本概念

25.1.1python下的圖像處理包

25.1.2pil支持的圖像檔案格式

25.1.3圖像處理中的其他概念

25.2圖像的基本處理

25.2.1圖像的讀寫操作

25.2.2獲取圖像信息

25.2.3圖像檔案格式的轉換

25.2.4圖像的裁剪和合成

25.2.5圖像的變換

25.3圖像處理的高級套用

25.3.1圖像的通道操作

25.3.2圖像的增強處理

25.3.3pil中的內置濾鏡

25.4使用pygame進行遊戲開發

25.4.1python遊戲開發包:pygame

25.4.2創建基本的pygame視窗

25.4.3事件系統

25.5小結

26章python語言的擴展與嵌入

26.1python語言的擴展

26.1.1python擴展簡介

26.1.2一個c擴展的例子

26.1.3模組方法表和初始化函式

26.1.4編譯和測試

26.2python語言的嵌入

26.2.1python嵌入簡介

26.2.2一個python嵌入的例子

26.2.3更好的嵌入

26.3小結

第27章windows下的python

27.1組件對象模型

27.1.1組件對象模型介紹

27.1.2com結構

27.1.3com對象的互動

27.2python對com技術的支持

27.2.1python中的windows擴展:pywin32

27.2.2客戶端com組件

27.2.3實現com組件

27.3windows下的常見python套用

27.3.1對word的自動訪問

27.3.2對excel的自動訪問

27.3.3對powerpoint的自動訪問

27.3.4對outlook的自動訪問

27.4小結...

相關詞條

相關搜尋

熱門詞條

聯絡我們