轉載自:http://www.crifan.com/files/doc/docbook/python_beginner_tutorial/release/html/python_beginner_tutorial.html
目錄
- 前言
- 1. Python簡介
- 2. 選擇並下載合適的版本的Python
- 3. 如何安裝Python
- 4. 選擇合適的Python開發環境
- 5. Python的基本語法和基礎知識
- 6. 繼續學習Python的思路和方法
- 7. Python常見問題及解答
- 8. Python相關資源
- 參考書目
插圖清單
範例清單
公式清單
- 4.1. 什麼是IDE
- 4.2. 什麼是Python的IDE
摘要
本章主要講解在開始學習Python之前,所需要了解到的Python的一些基本概念,
包括Python是什麼,Python的特點和常見的用途,以及Python的兩大版本之間的主要區別。
在開發Python之前,需要先搞懂Python是啥。
下面就是介紹一下,概念性的東西。
對於,Python,這個詞來說,在計算機語言領域內,此處,我們指的是,一種計算機語言,叫做Python
作為一種計算機語言的Python,自然也就會有,根據計算機語言不同的層面,去將其分類,所以你常常會聽到如下說法:
比如:
http://zh.wikipedia.org/wiki/Python_%28%E6%B6%88%E6%AD%A7%E4%B9%89%29
中的:
Python,一種直譯式、互動式、物件導向的計算機程式語言,由Guido van Rossum建立並以Monty Pythons飛行馬戲團的名字命名。
指令碼,對應的英文是:script
普通人,看到script這個英文單詞,或許想到的更多的是:電影的劇本,就是一段段的指令碼,所組成的
電影劇本的指令碼,決定了電影中的人和物,都做哪些事情,怎麼做
而計算機中的指令碼,決定了:
計算機中的作業系統和各種軟體工具,要做哪些事情,以及具體怎麼做
其實,指令碼,這個詞,筆者的理解,還有另外一種感覺:隨性
因為,現實中,寫電影指令碼,那直接拿張紙和筆,就可以寫了,寫完了,就可以拿去用,拿去拍電影了
而計算機中的指令碼,其實就是普通的文字,就是寫到文字檔案中的程式碼而已,其也是有隨性這個特點:寫完了,直接就可以(在某種具有解釋功能的環境中)執行了
比如:Linux中的shell指令碼,就是直接弄個文字檔案,寫上shell指令碼程式碼,然後儲存檔案,然後就可以,在Linux的Shell這個帶有shell的解釋功能的shell環境中,執行了
與此相對的,不那麼隨性的是:其他的,非指令碼語言,常叫做編譯性語言,比如C語言,往往都是需要額外加上編譯這個步驟,才能執行的。
解釋性,也被叫做:直譯式
而Python語言,本身就是一種解釋性語言,
所以,作為解釋性語言的Python,本身就有解釋性語言天然就有的一些優點和缺點:
除了作為解釋性語言的Python自帶的優缺點之外,作為Python語言本身,的確有其自己的特點:
一般來說,討論某種東西的特點,都是將其和同類事物去比較的;
相應的,此處,討論Python的特點的時候,把Python和其他計算機語言相比的,其特點,可以描述如下:
Python相對最大的一個特點,算是:
程式碼縮排決定了程式碼的邏輯關係,而不僅僅是為了好看
其他更多的特點,可以總結如下:
- 有很多特性,使得語言本身很方便程式設計者使用
比如對於字串可以直接通過陣列下表去獲得對應子字串
這類特性,是很多其他語言,本身所不具有的。
- Python是一種被廣泛採用的膠水語言
粘合能力,相對其他語言,很強
- 功能豐富的自帶的庫以及種類和數量繁多且強大的第三方庫
除了本身Python語言本身自帶的標準庫之外
由於Python語言本身很好用,促使很多其他人,前前後後,寫了N多個庫
積累至今,就成了:Python擁有數量巨大的,各種各樣的,功能強大的,第三方的庫函式。
此特點,對於Python語言的使用者來說,有著顯而易見的好處:
當你去實現很多各種功能的時候,往往不需要重複造輪子,
往往是可以找到,現成的,已有的,內建Python庫,或第三方的Python的庫,去幫你實現你要的功能
換句話說:你去實現一個複雜的功能的時候,往往變成了,找到合適的庫,並使用,即可。
與此相對的,用其他語言去實現同樣的功能的時候,由於缺少好用的庫,而使得你需要重頭到尾,全新的實現對應的功能所需的程式碼。
由此對比出,Python的好用和強大。
對於Python語言的學習,即使沒有去深入學習Python的細節知識
對於Python相關的一些必備知識,常識性的知識,也是需要先去了解清楚的。
下面就是對於Python的相關的常識性的東西,先做個解釋:
目錄
摘要
本章主要講解,在開始Python學習之前,如何根據自己的當前的作業系統的版本,去選擇和下載合適的版本的Python。
開發Python之前,肯定是要先搞清楚,如何下載對應的Python。
本來下載一個東西是很簡單的事情,但是由於Python有很多版本方面的事情,所以需要搞清楚很多基本邏輯和概念,才知道自己需要下載哪個版本的。
待整理:
【教程】如何下載最新版的,各種版本的,包括Python 2.x和Python 3.x的Python
因為,如果選擇錯誤的,不合適的版本的Python,
則很可能導致後續學習Python和開發Python時,會遇到問題和錯誤。
比如,一些相對常見,由於版本選擇錯誤而出現的問題有:
- 由於選擇了Python 3.x版本,但是參考別人的Python 2.x的程式碼,結果會出現語法錯誤
其中最最常見的,有兩個經典的例子:
- printf的語法不同而導致出錯
- TODO:好像有個string還是其他什麼的,版本2.x和版本3.x是不同的
當然,出處之外,Python 2.x和Python 3.x還有其他更多語法上面的不同,再次就不一一細說了。
- printf的語法不同而導致出錯
- x64的系統中安裝了x86的庫,導致後續使用時無法使用
TODO:找到對應的x64庫的錯誤的例子
Python官網中的下載頁面:
http://www.python.org/ftp/python/
http://python.org/getit/releases/
但是Python官網,不是太穩定:對於國內開發者來說,時不時會出現無法訪問的情況。
後來找到一個Python官網的國內的映象:
http://mirrors.sohu.com/python/
速度相對來說,蠻快的。
如果發現Python官網無法訪問和下載的話,可以去上述映象去下載。
目錄
摘要
本章主要講解,在下載了合適的版本的Python後,圖文並茂的介紹如何去安裝Python。
在下載完畢Python後,就是去安裝Python了。
Windows系列作業系統,有很多不同版本,
目前主流的,最常用的有Windows XP,Windows 7,Windows 8
下面以Windows 7為例,來解釋如何在Windows中安裝Python
待整理:
其中最重要的一點是:最好安裝的路徑中,不要包含中文
是為了避免以後可能出現的,在Python開發期間,由於中文路徑,而導致的一些問題
Linux系統是個統稱
其有很多所謂的發行版,
其中目前相對比較流行一些有:(較早的)RedHat(紅帽子),OpenSUSE,以及後來出現的Ubuntu,等等
好像是:由於Linux類的系統中,包括Ubuntu,很多內建的工具和服務,都是Python程式碼寫的。
所以,為了保證系統的正常執行,保證不影響當前自己的Linux系統,
最好不要解除安裝舊版本的Python,
而是在Linux類系統中自帶的,已有的Python基礎上,安裝另外一個,相對最新的Python
當然,其實如何只是為了學習Python,尤其是對於Python初學者來說,其實不必再安裝另外一個版本的系統
此處,只是為了,對於以後覺得有必要的時候,比如需要更新版本的Python,利用其中更好的功能等,而去安裝另外一個更新版本的Python
下面就來解釋,如何在Linux類系統中,安裝另外一個,更新版本的Python
目錄
摘要
本章主要講解,在安裝了Python之後,針對開發環境的概念,進行深入淺出的介紹,
最原始的開發環境以及常見的IDE開發環境的關係如何,以便使得讀者真正瞭解到各種開發環境的內在關係和優缺點,
才能真正幫助讀者選擇合適自己的開發環境,提高自己的開發效率。
此部分內容的目的:
希望對於,如何在Windows下,寫Python程式碼,進行Python開發,執行Python指令碼的人,看了此部分內容後,懂得了:
- 什麼是cmd下面去執行Python指令碼
- 什麼是Python的互動式的shell
- 什麼是Python的IDE
看此部分內容之前,需要具有以下前提:
- Python語言的基本知識
包括知道其程式碼就是普通文字等基礎知識
不瞭解的,可以先去看:
以瞭解關於計算機語言的巨集觀介紹;
再去看:
就明白了。
- 已經在Windows中安裝好了Python
關於此部分內容,詳見:
另外提示一下,關於版本的選擇:
【整理】總結Python2(Python 2.x版本)和Python3(Python 3.x版本)之間的區別
下面,通過最簡單的Python程式碼,此處只是列印一些Python版本資訊和系統資訊:
#!/usr/bin/python # -*- coding: utf-8 -*- """ Function: 【整理】如何在Windows下開發Python(如何執行Python指令碼) http://www.crifan.com/how_to_do_python_development_under_windows_environment Author: Crifan Li Version: 2012-12-06 """ import platform; pythonVersion = platform.python_version(); uname = platform.uname(); print "Just for demo how to do python development under windows:"; print "Current python version info is %s"%(pythonVersion); print "uname=",uname;
來說明,如何在Windows下,進行Python開發。
相對來說,最原始的,最基本的,開發Python的方式,只是:
Python程式碼,本身就只是文字;
所以,從原理上來說,只需要找個合適的文字編輯器,即可;
換句話說,如果只是簡單的寫寫幾行Python程式碼,你用Windows的記事本(Notepad),都是可以的;
只不過,由於Notepad功能太弱,所以在此個人推薦Notepad++。
為何推薦用Notepad++去寫Python程式碼 | |
---|---|
此處,推薦用Notepad++去寫Python程式碼,做Python開發,的原因 除了本身Notepad++作為文字編輯器,好用之外, 還有一個,相對來說,比較重要的問題:字元編碼 很多時候,由於Python開發者對於Python檔案的編碼,不太瞭解 導致在開發期間,出現很多,相對比較常見的字元編碼的問題 所以,為了,更加深入的瞭解和學習,真正的掌握Python 有必要,從一開始學習Python的時候 就選用合適的工具,這樣,避免後期,一些該知道的細節,尤其是檔案的編碼,不知道 而犯各種常見的錯誤
而關於Notepad++本身,不會使用,不熟悉,則可參考: 【crifan推薦】輕量級文字編輯器,Notepad最佳替代品:Notepad++ 關於Notepad++的幾乎一切的內容,都可以在上述的教程中找到。
|
此處呢,對應的就是:
用我所推薦的Notepad++,新建一個檔案,然後包括程式碼進入,存為對應的一個.py的檔案。
而關於如何操作,此處也一點點截圖,透徹的說明一下:
此處再次提示一下,一下Notepad++的所有功能,特性,用法,上面那個帖子中,都有專門的介紹。
想要更加詳細瞭解的相關的Notepad++的某個特定功能的用法的,自己去看即可。
下面的截圖,就不再事無鉅細的解釋Notepad++的功能特點了。只是截圖解釋如何操作而已。
開啟Notepad++後,點選新建,新建出一個新的檔案:
然後把上面給你們的程式碼,拷貝進去,就變成了:
此處由於是新建的空白檔案,所以Notepad++,不知道你是Python程式碼,沒法幫你自動實現語法高亮,
需要手動去設定一下:
語言⇒P⇒Python
就可以看到Python程式碼的語法高亮的效果了:
然後去儲存到某個位置。
檔案⇒另存為
在彈出的對話方塊中,輸入要儲存的檔名:demoRunPythonUnderWindows
提示:其中可以看到Notepad++自動幫你寫好了.py
字尾,那是因為你之前設定了Python語法高亮。
然後再選擇對應的路徑去儲存:
儲存好後,就是這樣的了:
且換到對應的,Python檔案所在的,資料夾,有兩種辦法:
而對於,什麼是windows的cmd,如何開啟cmd,如何切換到對應的路徑等內容,不熟悉的話,可以去參考:
然後就直接實現,開啟了cmd,並且切換到對應的當前檔案所在路徑了:
然後就是,在cmd中,輸入你的Python指令碼,即.py
檔案的完整的檔名。
此處是:
demoRunPythonUnderWindows.py
然後輸入回車,即可執行對應的Python指令碼,接著在cmd中也就可以看到輸出的結果了:
如此,就是一個,完整的,在windows的cmd中,執行Python指令碼的流程了。
而接下來,作為正常的開發Python的流程就只是:
-
你繼續去修改你的Python程式碼,新增新的程式碼,然後儲存python檔案,
-
再回到cmd中,重新再次執行Python,以驗證程式執行是否正常,是否獲得了你所期望的結果。
-
如此反覆,一點點,由少到多,一點點寫出足夠複雜的Python程式碼,實現你的複雜的功能。
Python有個shell,提供一個Python執行環境。方便你互動式開發。
即寫一行程式碼,就可以立刻被執行,然後方便檢視到結果。
而Python的Shell,在Windows環境下,又分兩種:
- Python (command line)
- IDLE (Python GUI)
下面分別介紹一下。
Windows下,安裝好Python後,你可以在開始選單中,找到對應的command line版本的Python Shell的:
其實,Win7中,有個更方便的方式,直接在搜尋框中搜python,即可找到:
開啟後,就是這個樣子的:
其中可以顯示出來對應的python版本資訊和系統資訊。
然後就是三個大於號>>>接下來,你就可以像在之前所說的,
普通文字中輸入python程式碼一樣,在此一行行輸入程式碼,然後就可以顯示對應的資訊了:
為何叫做互動式shell (interactive shell) | |
---|---|
其中可以看到,當你輸入對應的,第一行print時,此處命令列(command line)版本的Python Shell中, 就可以,動態的,互動式地,顯示出對應的資訊了。 正由於,此處可以,直接地,動態的,互動性式地,顯示出對應的資訊, 所以,才被叫做Python 的互動式的Shell,簡稱Python Shell。 |
對應的,把前面的程式碼都輸入完畢,結果顯示為:
下面將要介紹的,同樣是Python的Shell,但是是相對於command line版本而言,是GUI,帶圖形介面的版本的。
對應的開啟方式,和上面類似,可以直接搜python而找到:
對應的,可以看到,其名字寫的是IDLE
開啟後就是這樣的:
IDLE左上角的紅色TK圖示表示IDLE是用Tkinter圖形庫開發的 | |
---|---|
左上角的紅色圖示,好像是TK,是圖形介面庫的一種。 這個就是,很多Python教程中, 所常用來作為Python的開發環境,教別人寫Python程式碼的那個IDLE。 關於Python中的Tkinter圖形庫,詳見: 中的: |
對應的,輸入上述的程式碼,結果也是類似的:
IDLE中一次性貼上多行程式碼再執行則會出錯 | ||||
---|---|---|---|---|
如果你對於IDLE的執行方式:互動式的,一行一行的輸入,才能正常執行 不熟悉的話,作為新手,有些人會犯這樣的錯誤: 在別處拷貝Python示例程式碼,然後一次性的貼上多行程式碼到IDLE中 然後輸入回車去執行: 結果,很明顯,會出錯: 此處是不能正常輸入,之前所期望的python版本資訊, 而是出現其他異常情況:只是顯示此處的註釋程式碼 (因為此處最開始部分的程式碼,就只是註釋程式碼) (如果你是其他的多行程式碼,則對應的就是出現其他對應的錯誤了) 而,如果想要正確的執行程式碼, 則應該和之前一樣,正常的,一行一行的輸入程式碼,並回車,去執行 才能正常的,顯示出你所希望看到的資訊
|
即:
而Python的IDE,就是:
公式 4.2. 什麼是Python的IDE
Python IDE
= Python的整合開發環境
= 把和Python開發相關的各種工具
- Python程式碼編輯器:替代你前面用的Notepad++等文字編輯器
- Python的執行環境:模擬或替代:Python的(命令列或GUI版本的,互動式)shell
整合在一起
另外再加上各種檔案,程式碼,專案的組織,管理等方面的各種功能
以此去方便你執行對應的Python程式碼,
方便你進行Python專案的開發
而之所以會有Python的IDE的誕生,也很容易理解。
就是因為,如果開發Python過程中,寫Python程式碼,除錯Python程式碼,查詢相關的函式的解釋等等操作,
如果都是基於前面介紹的,用Notepad++等編輯器去編輯Python程式碼,寫完程式碼了,再切換到windows的cmd中去執行,
往往覺得很麻煩。
尤其是大型專案的話,可能就更加顯得不那麼高效;
以及對應的需要一些額外的功能,比如除錯複雜的Python程式碼,需要一點點跟蹤除錯,找到錯誤的根本原因等等。
上述的開發模式,就更顯得力不從心。
所以,才會有:
Python發展到現在,已經有了很多第三方的,別人開發的,可以用於或者專門用於Python開發的一些整合開發環境,即Python的IDE。
參考別人的一些討論和總結:
羅列幾個,相對用的比較廣泛的(排名不分先後):
- Ulipad
- PyScripter
- Wing IDE
- Eclipse + pydev外掛
關於其中的一些IDE的效果,可以參考:
【整理】各種Python的IDE(整合開發環境)的總結和對比
下面,隨便找了一個Python的IDE,
比如
通過截圖來對比性的解釋,
這樣你就更容易理解Python的原始開發環境和Python的IDE之間的關係了:
這下,至少你應該對於:
- Windows的cmd
- Python的Shell
- command line版本
- GUI版本:IDLE
- Python的IDE
三者之間的關係,有個大概的認識了。
這裡有一個錯誤的例子,比如這裡所遇到的:
如圖,其在當前的IDE中,開啟了一個.py
檔案:balanced_color_module.py
按照正常的邏輯,應該到選單中去執行程式碼,然後再去對應的console中(此處估計是Debug I/O),去檢視執行的結果。
但是,很明顯,對於此處的那個py檔案(balanced_color_module.py
),即使執行該檔案,也不會有什麼print輸出資訊
另外,其此處沒有開啟對應的console,而是開啟的是Python Shell,所以從邏輯上就是:
其在Python Shell中輸入的任何程式碼,本質上和你當前IDE中所開啟的py檔案,都沒有半毛錢關係的。
所以導致的結果就是,雖然在Python Shell中輸入了一些程式碼:
color = {"red":0.2, "green":0.4, "blue":0.4} balanced_color(color);
但是結果卻出錯,找不到對應的balanced_color函式。
所以,也就在常理之中,預料之內了。
因為,此時其所做的事情是:
使用了IDE,但是並沒有使用IDE中整合的終端除錯輸出
卻另外開啟了Python Shell,
而由於此處的IDE中開啟的程式碼,和Python Shell沒有半毛錢關係,所以才會執行程式碼出錯,找不到對應的函式的。
比如這裡遇到的問題是,通過IDE中執行Python程式碼,但是沒有響應:
其所遇到的問題,其實本質上,和IDE沒有關係,但是不熟悉Python的人,還是容易在IDE中犯這類問題的。
錯誤原因是:
沒有起始程式碼可以執行;
解決辦法是:
把上面最後一行的
start();
去掉縮排,頂行寫,變成:
start();
就可以了。使得Python可以執行到對應的start函式了。
當然,最好的寫法是,把:
start();
再改為:
if __name__ == "__main__": start();
具體的解釋,參見:
【整理】Python中的__name__和__main__含義詳解
一句話:
各取所需。根據自己的需求,決定用什麼開發環境。
再加一句:
針對初學者,我個人倒是建議使用第一種,即windows的cmd下,去執行python指令碼
目的很明確:
很多東西的學習,其本質上,都是需要一個循序漸進的過程的,學習Python語言同樣如此。
在沒有學會走路,即如何搞懂Windows的cmd下執行Python指令碼,
就想學會跑了,即直接利用Python的IDE,包括shell和第三方開發環境,
結果就是,很多東西,還是不明白到底是為什麼,理解的不透徹。
而當Python的基本知識,基本開發流程熟悉了之後,再建議你去使用第三方的Python的IDE,到時候,才能算是用著很爽。
即:
- 先:Windows的cmd + Notepad++
- 再:選用某個IDE,比如PyScripter,Ulipad,Eclipse+PyDev等。
首先要說明的是,據我目前的瞭解,對於一般Windows的使用者來說,想要使用已有的Python指令碼的話,主要有兩種形式可以使用。
- 直接執行文字式的Python指令碼檔案
我們所常見的,多數的Python指令碼,都是此形式的。而關於Python指令碼,其實就是一個文字檔案,你可以用任何一個文字編輯器,比如windows的
Notepad.exe
來開啟對應的字尾名為.py的檔案,比如我所釋出的,用於部落格搬家到wordpress的Python指令碼BlogsToWordpress.py
而對於在Windows的命令列,即cmd下執行Python指令碼,用起來,就是這個樣子的:
Windows的cmd下執行Python指令碼,不是在Python的Command Line工具下執行Python指令碼 對於此用法不太熟悉的新手,需要注意一點的是,不要把,在Windows下的cmd中執行Python指令碼,和在Python(安裝好後自帶有的)Command Line去寫Python程式碼,執行Python程式碼,相混淆了
對於Python的Command Line,以我此處Python 2.7為例,是從開始選單中找到的:開始選單 ⇒ Python 2.7 ⇒ Python (Command Line),如圖:
其開啟後的效果如下:
- 使用Python指令碼釋出者封裝好的,可以獨立執行的Python指令碼對應的可執行檔案
此用法,必須要Python指令碼釋出者,專門在寫完Python指令碼的時候,專門去用相應的工具,將Python的文字檔案,封裝成可以脫離Python執行環境,可以獨立執行的可執行檔案。說白了,就是一個exe可執行檔案,而執行此exe檔案,不需要安裝Python,即可執行。
下面,以Win7為例,通過專門錄製的gif動畫,來說明,如何在Windows的cmd中,執行我的一個Python指令碼:BlogsToWordpress.py
提示 | |
---|---|
上述gif動畫演示,只支援HTML在瀏覽器中的顯示。其他格式輸出中,比如PDF中,不支援此gif動畫。所以下面再用文字解釋一下大概流程:用文字解釋如何在Windows的cmd中執行Python指令碼BlogsToWordpress.py 如果你是在非HTML格式,比如PDF等,中檢視此文,想要看動畫的話,猛擊動畫演示如何在Windows的cmd中執行Python指令碼BlogsToWordpress.py |
用文字簡述就是:
用文字解釋如何在Windows的cmd中執行Python指令碼BlogsToWordpress.py.
- 開啟Windows的命令列環境cmd
開始 ⇒ 在"搜尋程式和檔案"的位置,輸入cmd,win7會自動搜尋到cmd,點選其以開啟cmd
- 切換到對應的你的Python指令碼所在位置
可以先去拷貝你的Python指令碼所在的路徑,此處為:
E:\Dev_Root\svn_dev_root\website\python\BlogsToWordpress
,然後在cmd中輸入
E: cd E:\Dev_Root\svn_dev_root\website\python\BlogsToWordpress
- 輸入指令碼名(及引數),以執行Python指令碼
輸入相應的python指令碼命令:
BlogsToWordpress.py -s http://blog.sina.com.cn/lifecoaching
然後回車執行該指令碼
目錄
摘要
本章主要講解讀者在擁有了自己的開發環境後,需要繼續深入學習的Python的基本語法和Python中的一些基本的概念。
此處只介紹,最基本的一些Python的語法,和其他一些基礎知識。
相關舊帖 | |
---|---|
【整理】總結Python2(Python 2.x版本)和Python3(Python 3.x版本)之間的區別 【整理】關於Python 3.x中,使用print函式時出現的語法錯誤(SyntaxError: invalid syntax)的問題的原因 |
在具體介紹,如何下載Python,安裝Python,進行Python開發之前,一個不得不先要解釋的話題就是,Python中的版本的問題。
主要包括2.x系列的和3.x系列的,兩者不相容。
下面詳細解釋一下。
關於兩種版本的對比,也常寫成為:
- Python 2.x vs Python 3.x
- Python 2 vs Python 3
- py2 vs py3
抽空參考:
https://wiki.python.org/moin/Python2orPython3
去整理一下版本的歷史。
之所以要在介紹Python的語法之前,先去說明這個Python檔案的編碼宣告,
那是因為,更多的Python初學者,對於去參考別人寫的Python的檔案中的程式碼的時候,
前幾行,就是看到的這部分,
所以,需要先介紹這部分的內容,
使得能在真正開始參考學習Python程式碼之前,就對於檔案編碼宣告這部分的內容,有個清晰的認識
待整理:
【整理】關於Python指令碼開頭兩行的:#!/usr/bin/python和# -*- coding: utf-8 -*-的作用 – 指定檔案編碼型別
此處在介紹Python的基本的變數定義等內容之前,需要詳細的介紹,關於Python中的縮排
因為,此縮排不僅僅是美觀問題,而且還決定了程式碼的邏輯層次,決定了程式碼的含義
TODO:新增提示,關於別的語言中,一般來說,程式碼的縮排與否,都是為了程式碼更美觀,可讀性更好,而此處的Python特殊:縮排直接決定了程式碼的內在邏輯含義。
Python中基本的變數的宣告和定義,初始化,使用
包括:整型,字串,等等等等
Python中有些語法,是和麵向物件程式設計相關的,比如:
【整理】Python中:self和init__的含義 + 為何要有self和__init__
其實,這些部分的內容,如果你是和筆者類似:
只是用到Python的一些去實現一些自己需要的功能,其實可能,用不到這部分的內容
比如我之前用Python實現爬蟲的時候,從頭到尾,其實一直就沒太涉及這部分,關於物件導向方面的內容。
摘要
本章主要去繼續學習Python的時候,如何去學習,嘗試教給讀者一種思路,以達到授人魚更授人以漁的目的。
這樣,即使以後不看筆者的教程,具有了Python的基本知識和學習思路,也就可以靠自己繼續學習了。
此處只介紹,在瞭解了基本的Python的開發知識之後,接下來,想要進一步開發,如何去做,如何學習。
目的在於,掌握了基本的學習方法後,就可以自己去一點點學習更多細節的東西了。
【整理】如何學習Python + 如何有效利用Python有關的網路資源 + 如何利用Python自帶手冊(Python Manual)
最好有個目的
即,基於一定的興趣導向,尋找一個合適的目標
比如自己給自己找個合適的任務,要實現一定的功能,最好是能滿足自己或他人的實際需求的目標
如此,繼續利用相關資源,邊學邊寫,
即一邊慢慢搞清楚,需要實現相關的功能,大致思路和要做的事情有哪些,
一邊將實際的思路,用真正的Python程式碼去實現出來
其中遇到相關的Python的基本語法,庫的使用,函式的介面等等細節問題
再去參考相關的API手冊說明,一點點學習並寫出自己的Python程式碼
舉例:
我之前自己就是:
由於需要實現部落格搬家,把之前我自己在網易163部落格,騰訊的QQ空間,百度的hi空間等等地方的,N多個部落格的內容,
都要遷移到我自己的新建的個人網站中
由此:首先是找到了,真實存在的個人需求,需要去解決
然後再去學習和了解,所涉及到的技術,是和網路爬蟲有關的
然後再去參考別人寫網路爬蟲的相關的程式碼
其中用到了經典的urllib等等庫函式,
然後再去參考Python自帶手冊,一點點學習其詳細的語法
最終,從無到有,一點點搞懂了:網路爬蟲的實現邏輯,如何用Python實現網路爬蟲,Python中和網路處理相關的庫函式的使用
由此:最終算是,對於Python語言,有了更進一步的瞭解,明白並掌握了常見的語法,基本的庫函式,基本概念的處理,尤其是字串等方面的棘手問題
摘要
本章主要解釋在Python學習期間,常見的一些問題,探討問題原因,給出解決答案和思路
7.1. |
在window的cmd中執行python結果卻呼叫了文字編輯器去開啟了,而不是去呼叫Python解析器去執行python檔案 |
TODO:驗證下面的推斷是否正確。
估計是,在安裝Python時: 沒有選擇Register Extensions,從而導致之後在cmd中執行py檔案,結果被其他預設的文字編輯器去開啟,而不是執行Python指令碼檔案了。
又或者是: 在安裝其他文字編輯器,比如Notepad++,然後預設註冊了py字尾 導致開啟Python的py檔案時,預設是呼叫,預設開啟程式,此處為Notepad++去開啟。 |
摘要
此處整理一些Python的學習資料。
TODO:整理更多的有價值的參考資料。
此處記錄一些不錯的Python相關的資料,供需要時參考:
- 簡明Python教程
Swaroop, C. H. 著,>沈潔元 譯
特點:內容很全。
- 深入 Python 3
- 關於python的中文文件
這裡:http://www.elias.cn/Python/HomePage介紹了很多的資源。其中就有python教程的中文版
- 線上實時演示Python程式碼的執行
Online Python Tutor - Learn programming by visualizing code execution
- Python的示例程式
- 各種Python的示例程式碼
- Python風格的詳盡解釋和舉例
- 如何寫自己的庫函式
http://postgetter-app.googlecode.com/hg-history/04cc032892e8a81a46eeb15ec7814fc3b39ed6ab/PostGetter.py值得學習學習。關於自己寫類,庫函式時,如何寫,如何處理logger和異常等等方面,值得學習。
- Python資料大全
http://simple-is-better.com/sites/收集了N多關於的Python的網站、教程、圖書、框架、應用等等內容。
- 關於有介紹Python的IDE
https://wiki.python.org/moin/IntegratedDevelopmentEnvironments
- MicroPython
之前看到一個好玩的,另類版本的Python: