編輯推薦
《Python硬體編程實戰》主要適用於沒有Python基礎的初學者,包括但不限於具有硬體背景的工程師、非計算機專業的讀者、Python業餘愛好者和學生等。
作者簡介
李茂 蘇州美名軟體有限公司資深嵌入式軟體開發工程師,擁有6年的嵌入式軟體開發經驗。曾先後供職於奧地利微電子、霍尼韋爾等公司,一直從事於嵌入式軟體開發的相關工作。作者利用業餘時間研究使用Python開發上層套用,創作了大量Python的第一手技術文檔。這些文檔發布在作者的個人部落格里,在網上被大量轉載和引用,它們是本書素材的重要來源。
目錄
前言
第1章 Python簡介 / 1
1.1 Python是什麼 / 1
1.2 對Python的四種定義 / 1
1.2.1 一種腳本語言 / 1
1.2.2 一種解釋型語言 / 3
1.2.3 一種高級語言 / 3
1.2.4 一種面向對象的語言 / 4
1.3 Python的特點 / 5
1.3.1 作為腳本語言的優缺點 / 5
1.3.2 Python自身的特點 / 7
1.4 Python的套用 / 9
1.4.1 Python能幹什麼 / 10
1.4.2 Python更適合做些什麼 / 10
1.4.3 你能用Python乾什麼 / 12
1.5 Python的必備常識 / 13
1.5.1 Python檔案的後綴 / 13
1.5.2 Python的縮寫和簡稱 / 13
1.5.3 Python的官網 / 13
1.5.4 Python的Logo / 13
第2章 下載並安裝Python / 14
2.1 因Python版本不合適而導致的常見問題 / 14
2.2 Python的兩大版本 / 15
2.2.1 Python版本歷史 / 15
2.2.2 Python 2和Python 3之間的區別 / 16
2.3 如何選擇合適的版本 / 20
2.3.1 選擇Python 2還是Python 3 / 21
2.3.2 選擇Python是32位還是64位 / 21
2.4 常見軟體的發布格式 / 23
2.4.1 源碼格式 / 23
2.4.2 二進制格式 / 25
2.5 下載合適的Python安裝包 / 26
2.5.1 Python提供了哪些形式 / 26
2.5.2 選擇更穩定、更快速的國內下載源 / 29
2.6 如何在Windows系統中安裝Python / 29
2.6.1 在Windows 7中安裝Python / 29
2.6.2 在Windows中安裝Python後的常見問題 / 35
2.7 在Linux系統中安裝Python / 36
2.7.1 在Ubuntu中安裝Python / 36
2.7.2 為何不推薦初學者在Ubuntu中安裝Python / 37
2.8 在Mac中安裝Python / 38
第3章 選擇合適的Python開發環境 / 39
3.1 不同平台下開發Python時共用的東西 / 39
3.2 不同平台下開發Python時的共同特點 / 40
3.2.1 Python最原始的開發方式 / 41
3.2.2 利用Python的shell進行互動式開發 / 41
3.2.3 利用Python的IDE進行開發 / 43
3.3 Python的IDE / 44
3.3.1 Python的IDE和編輯器、終端等的關係 / 44
3.3.2 Python的常見IDE / 46
3.3.3 Python IDE常見問題及解答 / 62
3.4 在Windows環境下進行Python開發 / 65
3.4.1 最原始的Python開發方式 / 65
3.4.2 用Python的shell進行互動式開發 / 72
3.4.3 用Python的IDE進行開發 / 79
3.5 在Linux環境下進行Python開發 / 79
3.5.1 Python最原始的開發方式 / 80
3.5.2 用Python的shell進行互動式開發 / 82
3.5.3 用Python的IDE進行開發 / 83
3.6 在Mac環境下進行Python開發 / 83
3.6.1 Python最原始的開發方式 / 83
3.6.2 用Python的shell進行互動式開發 / 86
3.6.3 用Python的IDE進行開發 / 86
3.7 究竟應選用哪種環境開發Python / 87
第4章 Python的基礎知識 / 89
4.1 SheBang和Python檔案編碼聲明 / 89
4.1.1 #!/usr/bin/python / 89
4.1.2 Python檔案編碼聲明 / 89
4.2 Python中的縮進 / 92
4.2.1 其他語言的縮進只影響代碼的美觀 / 92
4.2.2 Python的縮進會影響代碼的邏輯 / 93
4.3 Python中__name__和__main__的含義 / 98
4.3.1 __name__詳解 / 98
4.3.2 __main__詳解 / 99
4.3.3 __name__和__main__搭配使用的目的 / 99
4.4 Python中的面向對象編程 / 103
4.4.1 self和__init__的含義 / 103
4.4.2 初學者不要從最開始就太關注面向對象 / 109
4.5 Python中的變數 / 109
4.5.1 基本變數的聲明和定義 / 109
4.5.2 變數的作用域 / 112
4.6 Python中的分支結構 / 115
4.7 Python中的函式 / 116
第5章 一些有趣的Python小實驗 / 118
5.1 用Python查看系統平台信息 / 118
5.2 Python處理諧波和信號變換 / 119
5.3 更多有用且有趣的Python語法 / 123
5.3.1 Python中交換不同的變數值 / 124
5.3.2 Python中集合類的變數的切片 / 124
5.3.3 Python中的for循環和枚舉器 / 125
5.3.4 Python中的條件性賦值 / 126
第6章 常見Python套用實例 / 127
6.1 Python在網路方面的套用 / 127
6.2 Python在圖形界面方面的套用 / 132
6.2.1 Python的常見GUI圖形庫 / 132
6.2.2 Python的GUI圖形庫:PyQt / 132
6.3 Python在資料庫方面的套用 / 136
第7章 Python與開源硬體 / 141
7.1 Python和開源硬體之間的關係 / 141
7.2 pcDuino基礎知識 / 141
7.2.1 什麼是開源硬體 / 141
7.2.2 常見的開源硬體 / 142
7.2.3 為何選擇pcDuino / 146
7.2.4 如何配置開源硬體pcDuino / 147
7.3 在開源硬體pcDuino上使用Python / 155
7.3.1 Web伺服器 / 156
7.3.2 漏水監測 / 162
7.3.3 使用Z—Wave實現智慧型家居 / 166
附錄A 如何利用Python的相關資源 / 174
附錄B 如何繼續深入學習Python / 181
附錄C Python學習資料 / 182