
0人評分過此書
如果您已讀過《Python自動化的樂趣》這本暢銷書,學到了基礎的Python知識後,下一步想要成為更有實力的軟體開發工程師時,還需要學習什麼樣Python的知識呢?
歡迎您繼續閱讀本書,您不僅能學到進階的語法和編寫乾淨程式碼的精妙技巧,還能學到如何使用命令行和其他專業工具(如程式碼格式化程式、型別檢查器、linters和版本控制等)來提高Python程式設計的技能。本書作者Sweigart會帶領您使用最佳實務的作法來設定開發環境,為變數取好的名稱和提高可讀性,然後學習怎麼寫出好的說明文件,對程式做出好的組織管理,對程式做出正確的效能評測,以及物件導向設計的觀念,還有大O演算法分析等知識。這些進階的技能可以大幅提升您的程式開發能力,這些知識不僅是對Python語言有用,對任何其他程式語言也同樣有用。
本書精彩的內容:
‧寫出Python風格的程式碼,以及怎麼利用Python的Black自動格式化工具來寫出乾淨的程式碼
‧常見的程式碼錯誤,以及怎麼利用靜態分析器偵測出這些錯誤
‧活用Cookiecutter範本工具來組織管理程式專案的相關檔案結構
‧學會lambda和高階函式等相關的函式程式設計技巧
‧活用Python內建的timeit和cProfile模組來分析程式的速度
‧學會正確編寫注釋、文件字串,讓這些內容更有描述性和資訊力,並掌握編寫的時機
‧學到Python的物件導向程式設計、類別、繼承和property和dunder方法
沒有一本書可以馬上就能讓您成為專業的軟體開發專家,但本書除了教您活用Python的基本知識之外,您還能學到怎麼寫出易於除錯且具有Python風格的可讀程式碼,能讓您在邁向專業的路途中更為順暢。
歡迎您繼續閱讀本書,您不僅能學到進階的語法和編寫乾淨程式碼的精妙技巧,還能學到如何使用命令行和其他專業工具(如程式碼格式化程式、型別檢查器、linters和版本控制等)來提高Python程式設計的技能。本書作者Sweigart會帶領您使用最佳實務的作法來設定開發環境,為變數取好的名稱和提高可讀性,然後學習怎麼寫出好的說明文件,對程式做出好的組織管理,對程式做出正確的效能評測,以及物件導向設計的觀念,還有大O演算法分析等知識。這些進階的技能可以大幅提升您的程式開發能力,這些知識不僅是對Python語言有用,對任何其他程式語言也同樣有用。
本書精彩的內容:
‧寫出Python風格的程式碼,以及怎麼利用Python的Black自動格式化工具來寫出乾淨的程式碼
‧常見的程式碼錯誤,以及怎麼利用靜態分析器偵測出這些錯誤
‧活用Cookiecutter範本工具來組織管理程式專案的相關檔案結構
‧學會lambda和高階函式等相關的函式程式設計技巧
‧活用Python內建的timeit和cProfile模組來分析程式的速度
‧學會正確編寫注釋、文件字串,讓這些內容更有描述性和資訊力,並掌握編寫的時機
‧學到Python的物件導向程式設計、類別、繼承和property和dunder方法
沒有一本書可以馬上就能讓您成為專業的軟體開發專家,但本書除了教您活用Python的基本知識之外,您還能學到怎麼寫出易於除錯且具有Python風格的可讀程式碼,能讓您在邁向專業的路途中更為順暢。
-
簡介
-
本書的適用對象和特點
-
關於本書
-
您的程式設計旅程
-
-
Part 1:起程
-
第1 章 處理錯誤和尋求協助簡介
-
怎樣了解Python 錯誤訊息?
-
利用Linters 來避免錯誤
-
程式問題要怎麼提問才正確?
-
提問的實例
-
總結
-
-
第2 章 環境設定與命令提示模式
-
檔案系統
-
程式與處理程序
-
命令提示模式
-
環境變數和PATH
-
不使用命令提示模式執行Python 程式檔
-
總結
-
-
-
Part 2:最佳實務、工具和技能
-
第3 章 使用Black 進行程式碼格式化
-
哪些編寫程式的行為最討人厭?
-
風格樣式指南與PEP 8
-
水平間距
-
垂直間距
-
Black 是一套毫不妥協的程式碼格式化工具
-
總結
-
-
第4 章 選用易懂的命名
-
大小寫的風格
-
PEP 8 的命名慣例
-
使用適當長度的名稱
-
讓名稱變得好尋找
-
避免用玩笑、雙關語和文化隱喻來命名
-
不要使用內建的名稱
-
史上最糟的變數名稱
-
總結
-
-
第5 章 找出程式碼的異味
-
重複的程式碼
-
魔術數字
-
注釋掉的程式碼和死碼
-
印出除錯訊息
-
以數字為後置的變數
-
濫用類別
-
串列推導式中又有串列推導式
-
空的except 區塊與不好的錯誤訊息
-
程式碼異味的迷思
-
總結
-
-
第6 章 寫出Pythonic 風格的程式碼
-
Python 之襌
-
學會正確使用具有意義的縮排方式
-
常見的語法誤用
-
格式化字串
-
串列的淺複製
-
以Pythonic 風格來運用字典
-
條件表示式:Python 的「醜陋」三元運算子
-
變數值的處理
-
總結
-
-
第7 章 程式設計的行話
-
定義
-
一般常誤用的術語
-
總結
-
進一步的補充
-
-
第8 章 常見的Python 誤解和陷阱
-
不要對迴圈中用來遍訪的串列新增或刪除項目
-
一定要用copy.copy() 和copy.deepcopy() 來複製可變值
-
不要使用可變物件作為預設引數
-
不要以字串連接來製作字串
-
不要期望sort() 會按字母順序來排序
-
不要假設浮點數是完全精確的
-
不要鏈接 != 運算子
-
多元組中只有一個項目也不要忘記加逗號
-
總結
-
-
第9 章 少為人知的Python 奇異之處
-
為什麼256 是256,而257 不是257?
-
字串駐留
-
Python 假的遞增和遞減運算子
-
all() 函式傳入空的資料
-
布林值是整數值
-
鏈接多種運算子
-
Python 的Antigravity 彩蛋
-
總結
-
-
第10 章 寫出有效率的函式
-
函式名稱
-
函式規模大小的取捨
-
函式的參數和引數
-
函式語言程式設計
-
返回值應該都要有相同的資料型別
-
引發例外與返回錯誤碼
-
總結
-
-
第11 章 注釋、文件字串和型別提示
-
注釋
-
文件字串
-
型別提示
-
總結
-
-
第12 章 使用Git 來組織程式碼專案
-
Git 的Commit 和Repo
-
使用Cookiecutter 建立新的Python 專案
-
安裝Git
-
Git 工作流程
-
在您的電腦中建立Git 倉庫
-
檢閱提交記錄
-
還原舊的變更
-
GitHub 和git push 命令
-
總結
-
-
第13 章 評測效能和大O 演算法分析
-
timeit 模組
-
cProfile 效能分析器
-
大O 演算法分析
-
大O 階層
-
評測程式碼的大O 階層
-
總結
-
-
第14 章 實務專案
-
河內塔
-
四子棋
-
總結
-
-
-
Part 3:物件導向的Python
-
第15 章 物件導向程式設計與類別
-
現實的模擬:填寫表單
-
從類別建立物件
-
建立一個簡單的類別:WizCoin
-
type() 函式和 __qualname__ 屬性
-
非OOP 與OOP 範例:井字棋
-
為現實世界設計類別並不容易
-
總結
-
-
第16 章 物件導向程式設計與繼承
-
繼承的工作原理
-
isinstance() 和issubclass() 函式
-
類別方法
-
類別屬性
-
靜態方法
-
什麼時候使用類別和靜態物件導向功能?
-
物件導向的時髦術語
-
何時不要使用繼承?
-
多重繼承
-
方法解析順序
-
總結
-
-
第17 章 Pythonic 風格的OOP-property 與dunder 方法
-
Property
-
Python 的dunder 方法
-
總結
-
-
- 出版地 : 臺灣
- 語言 : 繁體中文
評分與評論
請登入後再留言與評分