Re: [問題] 關於Python入門書籍

看板Python作者 (亮)時間8年前 (2016/05/20 21:27), 7年前編輯推噓28(2807)
留言35則, 28人參與, 5年前最新討論串3/3 (看更多)
※ 引述《brightsu (渣)》之銘言: : 小弟本身沒有程式語言的背景 : 不外乎就是語法跟一些邏輯的問題 : 所以想請問一下各位前輩是否可以推薦入門的 Python 的書 : 目前就單純只有在做一些網路爬蟲而已 : 在未來希望可以結合硬體做一些環境資料收集 : 希望還是主攻在資料收集跟處理 python tw 上有一些第一次使用 Python 的參考資料。 http://wiki.python.org.tw/Python/第一次用就上手 底下是我自己維護的入門參考資料。 O'Reilly(歐萊禮)的書,官方線上商店常有 50% 折扣, PDF/ePub/Mobi 格式都有,能接受英文的話,十分推薦跟官方購買。 中文版就以天瓏書局為主。它也有賣英文紙本,逛實體店很舒服。 1. "Introducing Python", Bill Lubanovic, O'Reilly 2014.11 《精通 Python》 英:http://shop.oreilly.com/product/0636920028659.do 中:http://www.tenlong.com.tw/items/9863477311?item_id=1007464 O'Reilly Python 系列的書都寫得很好。這本是比較新出的,好處是它針 對初學者,比較薄,能在短時間看完,文字很流暢。 掌握基礎的語法,建議閱讀 Chp1 到 Chp7 ,以及 Chp8 File I/O 部份。 2. 《Python 程式設計入門》,葉難。博碩 2015.04 中:http://www.tenlong.com.tw/items/9864340050 原生中文書,也是針對初學者,並有列出 Python 2.7、3.3、3.4 不同版 本間的差異。內容編排是常見介紹程式語言的安排。 3. "Python Tutorial",Official Python Documentation, Python Devs. 英:https://docs.python.org/3/tutorial/index.html 簡中:http://www.pythondoc.com/pythontutorial3/index.html 繁中:https://docs.python.org.tw/3/tutorial/index.html (共同翻譯中) Python 的官網除了查語言特性之外,還能用來學習怎麼使用 stdlib。 Python 標準函式庫功能包山包海,在你想要做什麼之前,都應該到官網 查看看是不是內建 module 就已經提供功能了。 除外,還有一個簡潔的 tutorial,供初學者參考,適合有學過其他語言的人。 我認為這份寫得非常好,苦於沒有中文,以前經驗不太容易推廣,但值得看。 4. "Programming in Python 3" 2nd, Mark Summerfield, Addison-Wesley, 2009.11 《精通 Python 3 程式設計》 英:http://goo.gl/y1xf9u (source: InformIT) 中:http://www.tenlong.com.tw/items/9862760702 另一本 Python 中文入門書,比《深入淺出》難一點但比較像常規的教科書。 5. "Learning Python" 5ed, Mark Lutz, O'Reilly, 2013.06 英:http://shop.oreilly.com/product/0636920028154.do 中:僅有舊版 (2.7) 且絕版 雖然名稱看起來很像是 Python 的入門書,但它的篇幅已經來到 1600 頁, 實在無法推薦給初學者。它在一本書內把 Python 幾乎所有語言特性都說清楚, 同時考慮到 Python 2 和 3 版本。當你想要了解,例如 MRO 的順序、何謂 unbounded, bound method,這本書詳細的程度不會讓你失望,只怕你沒空讀。 其他: 關於 MOOCs 我有看過 Codecademy Python Track 以及 Coursera "An Introduction to Interactive Programming in Python" 這兩門課。我覺得最 大的缺點就是講 Python 2.7,Python 3.x 的好用功能與差異都沒提; 再來講課的 code 範例並不是使用 idiomatic Python syntax,在初學就沒養 成好習慣與慣用語法有點可惜。 其實還有很多 video traning 資源,例如 O'Reilly 上有 Python Learning Path,其中 "Introduction to Python" 是 Jessica McKellar 主講,她是 PyCon APAC 2014 Keynote,口條絕對沒問題。但我沒看完整內容,無法推薦。 不適合入門但值得一看的好書 -------------------------- A. "Python Cookbook" 3ed, David Beazley and Brian K. Jones, O'Reilly, 2013.05 《Python 的錦囊妙計》 英:http://shop.oreilly.com/product/0636920027072.do 中:http://www.tenlong.com.tw/items/9863470686 這本不是入門書但很適合深入了解 Python,並讓自己的程式碼寫得更 Pythonic。裡面介紹了很多寫法慣例 idioms,同時也有中文版。非常值得 在未來比較懂 Python 時買來看。 作者之一 David Beazley 是 PyCon TW 2013 的 Keynote。 他平常就是專門教 Python 的講師,他在 PyCon 講過的「所有 talk/tutorial」 如 concurrency, packaging, async io 等等都值得一看 B. "Fluent Python", Luciano Ramalho, O'Reilly, 2015.07 《流暢的 Python》 英:http://shop.oreilly.com/product/0636920032519.do 中:http://www.tenlong.com.tw/items/986347911X 當它是詳細、擴充版的 "Python Cookbook",實際上書中也常常引用 David 的話。 講述更多 Python 初介紹時不會深談的語言特性。 如:MRO, Mixin, decorator, closure, metaprogramming 每章最後的 Future Reading 與 Soapbox 旁徵博引,除了更細節的參考資料, 還有當初 Python 為何如此設計等考量與討論的歷史、發展、與各語言比較。 非常適合做為邁向 Python core developer 的參考書。 另外,針對原 po 提到的爬蟲、資料分析、hardware 等主題,我只能對我有碰過 一點點的資料分析來介紹。 Pandas 原作者 Wes McKinney 所寫的 "Python for Data Analysis" 是一本很經典的 Python 資料分析入門書,雖然有點舊(作者預計今年底出新版),但還是能掌握 像 Jupyter (IPython) Notebook, Pandas, matplotlib 最基本的 toolchain。 他也是 PyCon APAC 2014 的 Keynote。 要了解近代 Pandas 的新 API 與設計精神,可以讀官網的 Tutorial http://pandas.pydata.org/pandas-docs/version/0.18.1/tutorials.html 或者官網推薦的 "Modern Pandas" 一系列文章 http://tomaugspurger.github.io/modern-1.html 以上的所有內容我都至少看過一個語言(英文為主),其他的就待其他人補充了。 Conflict of Interest Disclosure ------------------------------- 我不是 O'Reilly 與天瓏的員工,我也不賣書。 我有參與官方 Python Tutorial 的中文翻譯,也歡迎大家加入。 / 如果有什麼主題,希望大家來交流討論的話,不妨報名 PyCon TW 的 BoF 擺攤。 形式自由,純聊天都可以。預計至少有 web 的,希望有人能開資料分析、 機器學習(深度學習)、DSP、Hardware、FinTech 等坑。 PyCon TW BoF 資訊: https://tw.pycon.org/2016/events/bof/ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.44.8.172 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1463750830.A.DA8.html

05/20 21:37, , 1F
Introducing Python 非常適合初學者,請安心享用。
05/20 21:37, 1F

05/20 21:38, , 2F
Fluent Python不適合初學者 但這本是寶庫 正在研讀
05/20 21:38, 2F

05/20 22:05, , 3F
05/20 22:05, 3F

05/20 22:15, , 4F
嗚...我超級感動的,非常感謝C大的認真回覆 Q_Q
05/20 22:15, 4F

05/20 22:16, , 5F
介紹得很詳細,推這篇 
05/20 22:16, 5F
補充一下,例子的話,書應該都很多,唯《精通 Python 3》印象中字比較多。 如果你需要的是完整情境例子的話,Introducing Py 後半、Py Cookbook、Fluent Py 這幾本比較多,但可能專門介紹 tool 的(如 Py for Data Analysis)會更豐富。 畢竟初學的書要顧及不能一次用太多語言特性或功能。 ※ 編輯: ccwang002 (114.44.8.172), 05/20/2016 22:28:11

05/20 22:30, , 6F
您真的說進我的心坎裡了啊...沒有基底太多的語言特性跟
05/20 22:30, 6F

05/20 22:31, , 7F
功能對我來說真的是一大挑戰...
05/20 22:31, 7F

05/20 23:31, , 8F
哇現在有這麼多python中文書啦,幾年前好少
05/20 23:31, 8F

05/21 00:43, , 9F
推Introducing Python
05/21 00:43, 9F

05/21 01:54, , 10F
推錦囊妙計和流暢
05/21 01:54, 10F

05/21 06:24, , 11F
很棒整理與分享 謝謝
05/21 06:24, 11F

05/21 11:45, , 12F
請問精通Python跟深入淺出 Python哪個比較適合新手
05/21 11:45, 12F

05/21 11:52, , 13F
精通Python比較完整,深入淺出很精簡,新手會很辛苦
05/21 11:52, 13F

05/21 23:29, , 14F
請問"高效能 Python 程式設計"這本書怎樣?
05/21 23:29, 14F
沒看過中文版的,編排上把不同優化、profiling 的方式都介紹了一遍, 如果沒什麼 performance tuning 經驗的話,這本書作為入門很不錯,各方面都有談到。 不過實際上真的要優化效能的話,單看這本不一定足夠,可能要花些時間, 例如讀 tool documentation 或專書 (cffi, Cython, numpy 等), 但優化本來每方面深入都是無底洞,以一本 400 頁的書應該算難度、廣度很平衡了。 ※ 編輯: ccwang002 (114.44.8.172), 05/22/2016 02:50:48

05/22 09:53, , 15F
05/22 09:53, 15F

05/22 11:49, , 16F
推分析
05/22 11:49, 16F

05/22 21:28, , 17F
Effective python這本如何
05/22 21:28, 17F

05/23 00:23, , 18F
沒讀過…
05/23 00:23, 18F

05/23 23:36, , 19F
推~C大 很用心 謝謝~
05/23 23:36, 19F

05/24 19:02, , 20F
借問一下 如果目的是sympy 有推荐的書嗎? THX!
05/24 19:02, 20F

05/25 00:59, , 21F
我不會 SymPy 今年 PyCon TW 有人講這個不如到時問講者
05/25 00:59, 21F

05/25 02:06, , 22F
很棒的分享,謝謝!
05/25 02:06, 22F

05/25 04:17, , 23F
05/25 04:17, 23F

05/25 18:17, , 24F
謝謝
05/25 18:17, 24F

05/27 12:13, , 25F
推認真回復
05/27 12:13, 25F

06/02 15:58, , 26F
06/02 15:58, 26F

06/10 18:45, , 27F
測試驅動開發:使用python跟精通python這兩本書相比 新手
06/10 18:45, 27F

06/10 18:45, , 28F
該如何選擇
06/10 18:45, 28F
我不知道你是什麼樣的新手,但如果還沒辦法自己寫出 Python 程式, 不該讀測試驅動開發這本書。

06/22 09:56, , 29F
推用心推薦
06/22 09:56, 29F
※ 編輯: ccwang002 (140.112.129.20), 06/26/2016 14:45:54

07/20 10:54, , 30F
推 謝謝您!!!
07/20 10:54, 30F

08/20 15:40, , 31F
08/20 15:40, 31F

09/27 10:48, , 32F
超級用心!! 推!!
09/27 10:48, 32F

04/22 19:45, , 33F
推超棒分享
04/22 19:45, 33F

09/08 21:17, , 34F
09/08 21:17, 34F

01/22 10:39, 5年前 , 35F
01/22 10:39, 35F
文章代碼(AID): #1NFn2kse (Python)
文章代碼(AID): #1NFn2kse (Python)