2021年12月30日 星期四
Python 教學
Python 教學
Python 是一種易學、功能強大的程式語言。它有高效能的高階資料結構,也有簡單但有效的方法去實現物件導向程式設計。Python 優雅的語法和動態型別,結合其直譯特性,使它成為眾多領域和大多數平臺上,撰寫腳本和快速開發應用程式的理想語言。
使用者可以自由且免費地從 Python 官網上 (https://www.python.org/) 取得各大平台上用的 Python 直譯器和標準函式庫,下載其源碼或二進位形式執行檔,同時,也可以將其自由地散佈。另外,Python 官網也提供了許多自由且免費的第三方 Python 模組、程式與工具、以及額外說明文件,有興趣的使用者,可在官網上找到相關的發行版本與連結網址。
使用 C 或 C++(或其他可被 C 呼叫的程式語言),可以很容易在 Python 直譯器內新增功能函式及資料型別。同時,對可讓使用者自製功能的應用程式來說,Python 也適合作為其擴充用界面語言 (extension language)。
這份教學將簡介 Python 語言與系統的基本概念及功能。除了閱讀之外、實際用 Python 直譯器寫程式跑範例,將有助於學習。但如果只用讀的,也是可行的學習方式,因為所有範例的內容皆獨立且完整。
若想了解 Python 標準物件和模組的描述,請參閱 Python 標準函式庫 (Standard Library)。在 Python 語言參考手冊 中,您可以學到 Python 語言更正規的定義。想用 C 或 C++ 寫延伸套件 (extensions) 的讀者,請閱讀 擴充和嵌入 Python 直譯器 和 Python/C API 參考手冊 。此外,市面上也能找到更深入的 Python 學習書。
這份教學中,我們不會介紹每一個功能,甚至,也不打算介紹完每一個常用功能。取而代之,我們的重心將放在介紹 Python 中最值得一提的那些功能,幫助您了解 Python 語言的特色與風格。讀完教學後,您將有能力閱讀和撰寫 Python 模組與程式,也做好進一步學習 Python 標準函式庫 (Standard Library) 中各類型的 Python 函式庫模組的準備。
術語表 頁面也值得細讀。
• 1. 淺嘗滋味
• 2. 使用 Python 直譯器
o 2.1. 啟動直譯器
2.1.1. 傳遞引數
2.1.2. 互動模式
o 2.2. 直譯器與它的環境
2.2.1. 原始碼的字元編碼 (encoding)
• 3. 一個非正式的 Python 簡介
o 3.1. 把 Python 當作計算機使用
3.1.1. 數字 (Number)
3.1.2. 字串 (String)
3.1.3. List(串列)
o 3.2. 初探程式設計的前幾步
• 4. 深入了解流程控制
o 4.1. if 陳述式
o 4.2. for 陳述式
o 4.3. range() 函式
o 4.4. 迴圈內的 break 和 continue 陳述式及 else 子句
o 4.5. pass 陳述式
o 4.6. match 陳述式
o 4.7. 定義函式 (function)
o 4.8. 深入了解函式定義
4.8.1. 預設引數值
4.8.2. 關鍵字引數
4.8.3. 特殊參數
4.8.3.1. 位置或關鍵字引數 (Positional-or-Keyword Arguments)
4.8.3.2. 僅限位置參數 (Positional-Only Parameters)
4.8.3.3. 僅限關鍵字引數 (Keyword-Only Arguments)
4.8.3.4. 函式範例
4.8.3.5. 回顧
4.8.4. 任意引數列表 (Arbitrary Argument Lists)
4.8.5. 拆解引數列表(Unpacking Argument Lists)
4.8.6. Lambda 運算式
4.8.7. 說明文件字串 (Documentation Strings)
4.8.8. 函式註釋 (Function Annotations)
o 4.9. 間奏曲:程式碼風格 (Coding Style)
• 5. 資料結構
o 5.1. 進一步了解 List(串列)
5.1.1. 將 List 作為 Stack(堆疊)使用
5.1.2. 將 List 作為 Queue(佇列)使用
5.1.3. List Comprehensions(串列綜合運算)
5.1.4. 巢狀的 List Comprehensions
o 5.2. del 陳述式
o 5.3. Tuples 和序列 (Sequences)
o 5.4. 集合 (Sets)
o 5.5. 字典(Dictionary)
o 5.6. 迴圈技巧
o 5.7. 深入了解條件 (Condition)
o 5.8. 序列和其他資料類型之比較
• 6. 模組 (Module)
o 6.1. 深入了解模組
6.1.1. 把模組當作腳本執行
6.1.2. 模組的搜尋路徑
6.1.3. 「編譯」Python 檔案
o 6.2. 標準模組
o 6.3. dir() 函式
o 6.4. 套件 (Package)
6.4.1. 從套件中 import *
6.4.2. 套件內引用
6.4.3. 多目錄中的套件
• 7. 輸入和輸出
o 7.1. 更華麗的輸出格式
7.1.1. 格式化的字串文本 (Formatted String Literals)
7.1.2. 字串的 format() method
7.1.3. 手動格式化字串
7.1.4. 格式化字串的舊方法
o 7.2. 讀寫檔案
7.2.1. 檔案物件的 method
7.2.2. 使用 json 儲存結構化資料
• 8. 錯誤和例外
o 8.1. 語法錯誤 (Syntax Error)
o 8.2. 例外 (Exception)
o 8.3. 處理例外
o 8.4. 引發例外
o 8.5. 例外鏈接 (Exception Chaining)
o 8.6. 使用者自定的例外
o 8.7. 定義清理動作
o 8.8. 預定義的清理動作
• 9. Class(類別)
o 9.1. 關於名稱與物件的一段話
o 9.2. Python 作用域 (Scope) 及命名空間 (Namespace)
9.2.1. 作用域和命名空間的範例
o 9.3. 初見 class
9.3.1. Class definition(類別定義)語法
9.3.2. Class 物件
9.3.3. 實例物件
9.3.4. Method 物件
9.3.5. Class 及實例變數
o 9.4. 隨意的備註
o 9.5. 繼承 (Inheritance)
9.5.1. 多重繼承
o 9.6. 私有變數
o 9.7. 補充說明
o 9.8. 疊代器 (Iterator)
o 9.9. 產生器 (Generator)
o 9.10. 產生器運算式
• 10. Python 標準函式庫概覽
o 10.1. 作業系統介面
o 10.2. 檔案之萬用字元 (File Wildcards)
o 10.3. 命令列引數
o 10.4. 錯誤輸出重新導向與程式終止
o 10.5. 字串樣式比對
o 10.6. 數學相關
o 10.7. 網路存取
o 10.8. 日期與時間
o 10.9. 資料壓縮
o 10.10. 效能量測
o 10.11. 品質控管
o 10.12. 標準模組庫
• 11. Python 標準函式庫概覽——第二部份
o 11.1. 輸出格式化 (Output Formatting)
o 11.2. 模板化 (Templating)
o 11.3. 二進制資料記錄編排 (Binary Data Record Layouts)
o 11.4. 多執行緒 (Multi-threading)
o 11.5. 日誌記錄 (Logging)
o 11.6. 弱引用 (Weak References)
o 11.7. 使用於 List 的工具
o 11.8. 十進制 (Decimal) 浮點數運算
• 12. 虛擬環境與套件
o 12.1. 簡介
o 12.2. 建立虛擬環境
o 12.3. 用 pip 管理套件
• 13. 現在可以來學習些什麼?
• 14. 互動式輸入編輯和歷史記錄替換
o 14.1. Tab 鍵自動完成 (Tab Completion) 和歷史記錄編輯 (History Editing)
o 14.2. 互動式直譯器的替代方案
• 15. 浮點數運算:問題與限制
o 15.1. 表示法誤差 (Representation Error)
• 16. 附錄
o 16.1. 互動模式
16.1.1. 錯誤處理
16.1.2. 可執行的 Python 腳本
16.1.3. 互動式啟動檔案
16.1.4. 客製化模組
訂閱:
張貼留言 (Atom)
-
Python 教學 Python 教學共有 190 多篇 Python 教學,包含基本語法、函式庫、網路爬蟲和一系列由淺入深的精選範例,不僅能對 Python 有充分的認識,還能透過 Python 做出各種有趣的應用! 點選 左側選單 可以查看所有文章 ( 行動裝置可點選 ...
沒有留言:
張貼留言