《Python基礎教程(第2版.修訂版)》包括Python程序設計的方方面面,首先從Python的安裝開始,隨后介紹了Python的基礎知識和基本概念,包括列表、元組、字符串、字典以及各種語句。然后循序漸進地介紹了一些相對高級的主題,包括抽象、異常、魔法方法、屬性、迭代器。此后探討了如何將Python與數據庫、網絡、C語言等工具結合使用,從而發揮出Python的強大功能,同時介紹了Python程序測試、打包、等知識。后,作者結合前面講述的內容,按照實際項目開發的步驟向讀者介紹了幾個具有實際意義的Python項目的開發過程。
《Python基礎教程(第2版.修訂版)》內容涉及的范圍較廣,既能為初學者夯實基礎,又能幫助程序員提升技能,適合各個層次的Python開發人員閱讀參考。
本書是經典的Python入門教程,層次鮮明,結構嚴謹,內容翔實,特別是后幾章,作者將前面講述的內容應用到10個引人入勝的項目中,并以模板的形式介紹了項目的開發過程,手把手教授Python開發,讓讀者從項目中領略Python的真正魅力。
本書既適合初學者夯實基礎,又能幫助Python程序員提升技能,即使是Python方面的技術專家,也能從書里找到耳目一新的內容。
Magnus Lie Hetland 挪威科技大學副教授,教授算法。黑客,喜歡鉆研新銳編程語言,是Python語言的堅定支持者。他寫過很多Python方面的書和在線教程,比如深受讀者歡迎的網上教程Instant Python。此外他還是一名業余話劇演員,從1985年首次登臺至今,已經參演數十部話劇。
第1章快速改造:基礎知識
1.1安裝Python
1.1.1Windows
1.1.2Linux和UNIX
1.1.3蘋果機(Macintosh)
1.1.4其他發行版本
1.1.5時常關注,保持更新
1.2交互式解釋器
1.3算法是什么
1.4數字和表達式
1.4.1長整數
1.4.2十六進制和八進制
1.5變量
1.6語句
1.7獲取用戶輸入
1.8函數
1.9模塊
1.9.1cmath和復數
1.9.2回到__future__
1.10保存并執行程序
1.10.1通過命令提示符運行Python腳本
1.10.2讓腳本像普通程序一樣運行
1.10.3注釋
1.11字符串
1.11.1單引號字符串和轉義引號
1.11.2拼接字符串
1.11.3字符串表示,str和repr
1.11.4input和raw_input的比較
1.11.5長字符串、原始字符串和Unicode
1.12小結
1.12.1本章的新函數
1.12.2接下來學什么
第2章列表和元組
2.1序列概覽
2.2通用序列操作
2.2.1索引
2.2.2分片
2.2.3序列相加
2.2.4乘法
2.2.5成員資格
2.2.6長度、最小值和較大值
2.3列表:Python的“苦力”
2.3.1list函數
2.3.2基本的列表操作
2.3.3列表方法
2.4元組:不可變序列
2.4.1tuple函數
2.4.2基本元組操作
2.4.3那么,意義何在
2.5小結
2.5.1本章的新函數
2.5.2接下來學什么
第3章使用字符串
3.1基本字符串操作
3.2字符串格式化:精簡版
3.3字符串格式化:完整版
3.3.1簡單轉換
3.3.2字段寬度和精度
3.3.3符號、對齊和用0填充
3.4字符串方法
3.4.1find
3.4.2join
3.4.3lower
3.4.4replace
3.4.5split
3.4.6strip
3.4.7translate
3.5小結
3.5.1本章的新函數
3.5.2接下來學什么
第4章字典:當索引不好用時
4.1字典的使用
4.2創建和使用字典
4.2.1dict函數
4.2.2基本字典操作
4.2.3字典的格式化字符串
4.2.4字典方法
4.3小結
4.3.1本章的新函數
4.3.2接下來學什么
第5章條件、循環和其他語句
5.1print和import的更多信息
5.1.1使用逗號輸出
5.1.2把某件事作為另一件事導入
5.2賦值魔法
5.2.1序列解包
5.2.2鏈式賦值
5.2.3增量賦值
5.3語句塊:縮排的樂趣
5.4條件和條件語句
5.4.1這就是布爾變量的作用
5.4.2條件執行和 if 語句
5.4.3else子句
5.4.4elif子句
5.4.5嵌套代碼塊
5.4.6更復雜的條件
5.4.7斷言
5.5循環
5.5.1while循環
5.5.2for循環
5.5.3循環遍歷字典元素
5.5.4一些迭代工具
5.5.5跳出循環
5.5.6循環中的else子句
5.6列表推導式——輕量級循環
5.7三人行
5.7.1什么都沒發生
5.7.2使用del刪除
5.7.3使用exec和eval執行和求值字符串
5.8小結
5.8.1本章的新函數
5.8.2接下來學什么
第6章抽象
6.1懶惰即美德
6.2抽象和結構
6.3創建函數
6.3.1文檔化函數
6.3.2并非真正函數的函數
6.4參數魔法
6.4.1值從哪里來
6.4.2我能改變參數嗎
6.4.3關鍵字參數和默認值
6.4.4收集參數
6.4.5參數收集的逆過程
6.4.6練習使用參數
6.5作用域
6.6遞歸
6.6.1兩個經典:階乘和冪
6.6.2另外一個經典:二分法查找
6.7小結
6.7.1本章的新函數
6.7.2接下來學什么
第7章更加抽象
7.1對象的魔力
7.1.1多態
7.1.2封裝
7.1.3繼承
7.2類和類型
7.2.1類到底是什么
7.2.2創建自己的類
7.2.3特性、函數和方法
7.2.4類的命名空間
7.2.5指定超類
7.2.6檢查繼承
7.2.7多個超類
7.2.8接口和內省
7.3一些關于面向對象設計的思考
7.4小結
7.4.1本章的新函數
7.4.2接下來學什么
第8章異常
8.1什么是異常
8.2按自己的方式出錯
8.2.1raise語句
8.2.2自定義異常類
8.3捕捉異常
8.4不止一個except子句
8.5用一個塊捕捉兩個異常
8.6捕捉對象
8.7真正的全捕捉
8.8萬事大吉
8.9……
8.10異常和函數
8.11異常之禪
8.12小結
8.12.1本章的新函數
8.12.2接下來學什么
第9章魔法方法、屬性和迭代器
9.1準備工作
9.2構造方法
9.2.1重寫一般方法和特殊的構造方法
9.2.2調用未綁定的超類構造方法
9.2.3使用super函數
9.3成員訪問
9.3.1基本的序列和映射規則
9.3.2子類化列表,字典和字符串
9.4更多魔力
9.5屬性
9.5.1property函數
9.5.2靜態方法和類成員方法
9.5.3__getattr__、__setattr__和它的朋友們
9.6迭代器
9.6.1迭代器規則
9.6.2從迭代器得到序列
9.7生成器
9.7.1創建生成器
9.7.2遞歸生成器
9.7.3通用生成器
9.7.4生成器方法
9.7.5模擬生成器
9.8八皇后問題
9.8.1生成器和回溯
9.8.2問題
9.8.3狀態表示
9.8.4尋找沖突
9.8.5基本情況
9.8.6需要遞歸的情況
9.8.7打包
9.9小結
9.9.1本章的新函數
9.9.2接下來學什么
第10章自帶電池
10.1模塊
10.1.1模塊是程序
10.1.2模塊用于定義
10.1.3讓你的模塊可用
10.1.4包
10.2探究模塊
10.2.1模塊中有什么
10.2.2用help獲取幫助
10.2.3文檔
10.2.4使用源代碼
10.3標準庫:一些最愛
10.3.1sys
10.3.2os
10.3.3fileinput
10.3.4集合、堆和雙端隊列
10.3.5time
10.3.6random
10.3.7shelve
10.3.8re
10.3.9其他有趣的標準模塊
10.4小結
10.4.1本章的新函數
10.4.2接下來學什么
第11章文件和流
11.1打開文件
11.1.1文件模式
11.1.2緩沖
11.2基本的文件方法
11.2.1讀和寫
11.2.2管式輸出
11.2.3讀寫行
11.2.4關閉文件
11.2.5使用基本文件方法
11.3對文件內容進行迭代
11.3.1按字節處理
11.3.2按行操作
11.3.3讀取所有內容
11.3.4使用fileinput實現懶惰行迭代
11.3.5文件迭代器
11.4小結
11.4.1本章的新函數
11.4.2接下來學什么
第12章圖形用戶界面
12.1豐富的平臺
12.2下載和安裝wxPython
12.3創建示例GUI應用程序
12.3.1開始
12.3.2窗口和組件
12.3.3標簽、標題和位置
12.3.4更智能的布局
12.3.5事件處理
12.3.6完成了的程序
12.4但是我寧愿用……
12.4.1使用Tkinter
12.4.2使用Jython和Swing
12.4.3使用其他開發包
12.5小結
第13章數據庫支持
13.1Python數據庫編程接口(API)
13.1.1全局變量
13.1.2異常
13.1.3連接和游標
13.1.4類型
13.2SQLite和PySQLite
13.2.1入門
13.2.2數據庫應用程序示例
13.3小結
13.3.1本章的新函數
13.3.2接下來學什么
第14章網絡編程
14.1少數幾個網絡設計模塊
14.1.1socket模塊
14.1.2urllib和urllib2模塊
14.1.3其他模塊
14.2SocketServer和它的朋友們
14.3多個連接
14.3.1使用SocketServer進行分叉和線程處理
14.3.2帶有select和poll的異步I/O
14.4Twisted
14.4.1下載并安裝Twisted
14.4.2編寫Twisted服務器
14.5小結
14.5.1本章的新函數
14.5.2接下來學什么
第15章Python和Web
15.1屏幕抓取
15.1.1Tidy和XHTML解析
15.1.2Beautiful Soup
15.2使用CGI創建動態網頁
15.2.1及時步:準備網絡服務器
15.2.2第二步:加入Pound Bang行
15.2.3第三步:設置文件權限
15.2.4CGI安全風險
15.2.5簡單的CGI腳本
15.2.6使用cgitb調試
15.2.7使用cgi模塊
15.2.8簡單的表單
15.3更進一步:mod_python
15.3.1安裝mod_python
15.3.2CGI處理程序
15.3.3PSP
15.3.4
15.4網絡應用程序框架
15.5Web服務:正確分析
15.5.1RSS和相關內容
15.5.2使用XML-RPC進行遠程過程調用
15.5.3SOAP
15.6小結
15.6.1本章的新函數
15.6.2接下來學什么
第16章測試
16.1先測試,后編碼
16.1.1的需求說明
16.1.2為改變而計劃
16.1.3測試的4個步驟
16.2測試工具
16.2.1doctest
16.2.2unittest
16.3單元測試以外的內容
16.3.1使用PyChecker和PyLint檢查源代碼
16.3.2性能分析
16.4小結
16.4.1本章的新函數
16.4.2接下來學什么
第17章擴展Python
17.1考慮哪個更重要
17.2非常簡單的途徑:Jython和IronPython
17.3編寫C語言擴展
17.3.1SWIG
17.3.2自己研究
17.4小結
17.4.1本章的新函數
17.4.2接下來學什么
第18章程序打包
18.1Distutils基礎
18.2打包
18.2.1建立存檔文件
18.2.2創建Windows安裝程序或RPM包
18.3編譯擴展
18.4使用py2exe創建可執行程序
18.5小結
18.5.1本章的新函數
18.5.2接下來學什么
第19章好玩的編程
19.1為什么要好玩
19.2程序設計的柔術
19.3原型設計
19.4配置
19.4.1提取常量
19.4.2配置文件
19.5日志記錄
19.6如果還沒煩
19.7如果還想學
19.8小結
第20章項目1:即時標記
20.1問題是什么
20.2有用的工具
20.3準備工作
20.4初次實現
20.4.1找出文本塊
20.4.2添加一些標記
20.5再次實現
20.5.1處理程序
20.5.2處理程序的超類
20.5.3規則
20.5.4規則的超類
20.5.5過濾器
20.5.6分析器
20.5.7構造規則和過濾器
20.5.8整合
20.6進一步探索
第21章項目2:畫幅好畫
21.1問題
21.2有用的工具
21.3準備工作
21.4初次實現
21.4.1用ReportLab畫圖
21.4.2生成折線
21.4.3編寫原型
21.5再次實現
21.5.1獲取數據
21.5.2使用LinePlot類
21.6進一步探索
第22章項目3:萬能的XML
22.1問題
22.2有用的工具
22.3準備工作
22.4初次實現
22.4.1創建簡單的內容處理器
22.4.2生成HTML頁面
22.5再次實現
22.5.1調度程序的混入類
22.5.2實現首部、頁腳和默認的處理程序
22.5.3對目錄的支持
22.5.4事件處理程序
22.6進一步探索
第23章項目4:新聞聚合
23.1問題
23.2有用的工具
23.3準備工作
23.4初次實現
23.5再次實現
23.6進一步探索
第24章項目5:虛擬茶話會
24.1問題
24.2有用的工具
24.3準備工作
24.4初次實現
24.4.1ChatServer類
24.4.2ChatSession類
24.4.3整合
24.5再次實現
24.5.1基礎命令解釋
24.5.2房間
24.5.3登錄和退出房間
24.5.4主聊天室
24.5.5新的服務器
24.6進一步探索
第25章項目6:使用CGI進行遠程編輯
25.1問題
25.2有用的工具
25.3準備工作
25.4初次實現
25.5再次實現
25.5.1創建文件名表單
25.5.2創建編輯器的腳本
25.5.3編寫保存腳本
25.5.4運行編輯器
25.6進一步探索
第26章項目7:自定義電子公告板
26.1問題
26.2有用的工具
26.3準備工作
26.4初次實現
26.5再次實現
26.5.1編寫Main腳本
26.5.2編寫View腳本
26.5.3編寫Edit腳本
26.5.4編寫Save腳本
26.5.5嘗試使用
26.6進一步探索
第27章項目8:使用XML-RPC進行文件共享
27.1問題
27.2有用的工具
27.3準備工作
27.4初次實現
27.4.1實現一個簡單的節點
27.4.2嘗試使用首次實現
27.5再次實現
27.5.1創建客戶端界面
27.5.2引發異常
27.5.3驗證文件名
27.5.4嘗試使用再次實現
27.6進一步探索
第28章項目9:文件共享2——GUI版本
28.1問題
28.2有用的工具
28.3準備工作
28.4初次實現
28.5再次實現
28.6進一步探索
第29章項目10:DIY街機游戲
29.1問題
29.2有用的工具
29.2.1pygame
29.2.2pygame.locals
29.2.3pygame.display
29.2.4pygame.font
29.2.5pygame.sprite
29.2.6pygame.mouse
29.2.7pygame.event
29.2.8pygame.image
29.3準備工作
29.4初次實現
29.5再次實現
29.6進一步探索
附錄A簡明版本
附錄B
“本書系統地講解了Python語言,后幾章介紹的10個項目是本書的亮點。”
——RobertA.Gibson,軟件工程師
“在介紹Python語言的圖書中,本書是我見過的秀的一本,內容循序漸進,可讀性強。強烈推薦給Python初學者。”
——Amazon.com
“結構安排合理、基礎知識講解到位、10個項目實用,……是為數不多的給真正的初學者寫的入門書。”
——豆瓣網友評論
終于下決心好好學習python了,這本書是非常好的入門書籍,要多看,看過去了,回來再看收獲大
python基礎教程是學習這門語言中較好的一本入門書籍,國外的一些教材上也推薦讀者閱讀這本書籍。書的紙張泛黃,感覺不是新書一樣,跟利用python進行數據分析那本書的紙張不在一個檔次上。
Python入門書,但講的不透徹,想深入學習的話還是建議看學習手冊
看了一些 比較適合初學者 不過很多內容也可以網上找到 只不過看書更加的系統
有折痕,半本書都有折痕。封面的一個角都被裁剪掉了,這樣的書也敢發貨。里面的頁張也有裁剪問題。
書皮折痕特別嚴重,側邊還有紙膠,打開書里面還有灰塵,很是郁悶
買來學習Python的,本書是講Python基礎的,適合初學者,如果有其他編程基礎的話更好
書上用的是python2作為例子,只能對照著其他的書籍一起看,然后在查查幫助文檔。畢竟拍森2和。拍森3不太一樣。
這本書可以說很實用,和以前枯燥的學習思維完全不一樣,絕對可以讓你喜歡Python
幫人帶的書,我自己讀過前一版本,這本是修訂版,內容適合初學者,講解了python2及3的內容,如果是一位菜鳥想學習python推薦這書,上手快。
還不錯的一本入門書,但是建議找視頻一起看,書里面的邏輯十分清楚,然而個人認為聽了相關的視頻講解在看書會有更加深刻的認知和感受,以及一定要安裝軟件,邊學邊操作。
書挺不錯的,在一開始就淺引以后會用到的一些知識,讓讀者在一開始就能夠快速上手寫出程序來。麗激發了讀者學習的興趣又為后文知識的展開做鋪墊。因為近期在忙著考試的事情所以只是看了二十幾頁,但就目前看來這本書沒有太多廢話,講的東西都是直接可以上手的,不錯。
很不錯,里邊的內容很詳細,都感覺適合初學者,如果有語音底子的會學的更快,不用一周就能領會到,對于我這個半生不熟的,還是會慢點。書很好,好評
Python入門書中,這應該是最適合我的了,有些地方翻譯不盡人意,但整體不錯,作者好詼諧,我們國內老師也這樣就好了
很不錯的Python教程~可以好好地學了~
當當真是做的越來越差了。。。送過來包裝壞了不說,書也有損。。
首先我要說的是,這本書知識密度很高,這點一定要贊一個!!與國內專著書籍一看塊頭就暈,看了內容更暈不同,這本書是給初學者看的!在信息量很大的前提下又不失自然地講述,無疑是初學者最喜歡的方式!這本書,很好,很好!
書本說的很詳細,可惜不是python3.0以前
這本書講的很多東西過時了,講的都是python2.4以及之前版本的東西,可是現在python軟件已經最起碼更新到3.6了。而且翻譯水平實在不高,很多病句,不知所謂,看著鬧心
Python入門必選教材,很適合初學者。推薦!
經典書籍。印數已經達到15萬。這時要人手一冊的節奏么?有人認為不適合初學者。那得看什么樣的初學者了,如果一點編程基礎也沒有,也沒人教,完全靠自己啃,可能難度略大些(這樣的初學者,可以去了解一下head first python)。這本書把所有重要的基本知識整理的非常系統,清晰,工作中經常用作手冊來查。再配合標準庫文檔。唯一的不足就是有些內容略陳舊,根據書中的內容去找網站,卻發現網站已經停止更新(比如那個生成windows可執行程序的庫,就已經整合到python網站,而不是書上給出的網站了)。但作為向導很好,至少讓讀者指導有這么個庫可以用,給個尋找的方向。比更實用。
書很厚,內容充實!當當網物流真是差!!網站上顯示第二天可以送到,結果隔了一天!說什么因為系統的問題?真是呵呵了,和自己顯示的送達時間不符,發條短信就應付人了事!!如果知道是隔了一天送到,就不會在當當買書了!!
個人覺得比起Python核心編程,這個更好一點吧。
這本書,真是,作為個初學者看著評論買的,都說好,說什么后面的是個項目好!好個屁呀~我看別人的博客都比書寫的好,完全不知道他在說什么,整個內容講的邏輯簡直就對不上,而且東西講的一點都不深入,基本上全都是一筆帶過,寫了一堆跟技術無關的,完全就是湊字數來的!!!差評@!!!!!!!!!!!!!!!!!