天天看點

快速入門:十分鐘學會Python

最近開始整理python的資料,部落客建立了一個qq群,希望給大家提供一個交流的同平台 78486745 。

假設你希望學習Python這門語言,卻苦于找不到一個簡短而全面的入門教程。那麼本教程将花費十分鐘的時間帶你走入Python的大門。本文的内容介于教程(Toturial)和速查手冊(CheatSheet)之間,是以隻會包含一些基本概念。很顯然,如果你希望真正學好一門語言,你還是需要親自動手實踐的。在此,我會假定你已經有了一定的程式設計基礎,是以我會跳過大部分非Python語言的相關内容。本文将高亮顯示重要的關鍵字,以便你可以很容易看到它們。另外需要注意的是,由于本教程篇幅有限,有很多内容我會直接使用代碼來說明加以少許注釋。

Python是一門具有強類型(即變量類型是強制要求的)、動态性、隐式類型(不需要做變量聲明)、大小寫敏感(var和VAR代表了不同的變量)以及面向對象(一切皆為對象)等特點的程式設計語言。

擷取幫助

你可以很容易的通過Python解釋器擷取幫助。如果你想知道一個對象(object)是如何工作的,那麼你所需要做的就是調用help(<object>)!另外還有一些有用的方法,dir()會顯示該對象的所有方法,還有<object>.doc會顯示其文檔:

Python中沒有強制的語句終止字元,且代碼塊是通過縮進來訓示的。縮進表示一個代碼塊的開始,逆縮進則表示一個代碼塊的結束。聲明以冒号(:)字元結束,并且開啟一個縮進級别。單行注釋以井号字元(#)開頭,多行注釋則以多行字元串的形式出現。指派(事實上是将對象綁定到名字)通過等号(“=”)實作,雙等号(“==”)用于相等判斷,”+=”和”-=”用于增加/減少運算(由符号右邊的值确定增加/減少的值)。這适用于許多資料類型,包括字元串。你也可以在一行上使用多個變量。例如:

Python具有清單(list)、元組(tuple)和字典(dictionaries)三種基本的資料結構,而集合(sets)則包含在集合庫中(但從Python2.5版本開始正式成為Python内建類型)。清單的特點跟一維數組類似(當然你也可以建立類似多元數組的“清單的清單”),字典則是具有關聯關系的數組(通常也叫做哈希表),而元組則是不可變的一維數組(Python中“數組”可以包含任何類型的元素,這樣你就可以使用混合元素,例如整數、字元串或是嵌套包含清單、字典或元組)。數組中第一個元素索引值(下标)為0,使用負數索引值能夠從後向前通路數組元素,-1表示最後一個元素。數組元素還能指向函數。來看下面的用法:

你可以使用:運算符通路數組中的某一段,如果:左邊為空則表示從第一個元素開始,同理:右邊為空則表示到最後一個元素結束。負數索引則表示從後向前數的位置(-1是最後一個項目),例如:

Python中的字元串使用單引号(‘)或是雙引号(“)來進行标示,并且你還能夠在通過某一種标示的字元串中使用另外一種标示符(例如 “He said ‘hello’.”)。而多行字元串可以通過三個連續的單引号(”’)或是雙引号(“””)來進行标示。Python可以通過u”This is a unicode string”這樣的文法使用Unicode字元串。如果想通過變量來填充字元串,那麼可以使用取模運算符(%)和一個元組。使用方式是在目标字元串中從左至右使用%s來指代變量的位置,或者使用字典來代替,示例如下:

Python中可以使用if、for和while來實作流程控制。Python中并沒有select,取而代之使用if來實作。使用for來枚舉清單中的元素。如果希望生成一個由數字組成的清單,則可以使用range(<number>)函數。以下是這些聲明的文法示例:

函數通過“def”關鍵字進行聲明。可選參數以集合的方式出現在函數聲明中并緊跟着必選參數,可選參數可以在函數聲明中被賦予一個預設值。已命名的參數需要指派。函數可以傳回一個元組(使用元組拆包可以有效傳回多個值)。Lambda函數是由一個單獨的語句組成的特殊函數,參數通過引用進行傳遞,但對于不可變類型(例如元組,整數,字元串等)則不能夠被改變。這是因為隻傳遞了該變量的記憶體位址,并且隻有丢棄了舊的對象後,變量才能綁定一個對象,是以不可變類型是被替換而不是改變(譯者注:雖然Python傳遞的參數形式本質上是引用傳遞,但是會産生值傳遞的效果)。例如:

Python支援有限的多繼承形式。私有變量和方法可以通過添加至少兩個前導下劃線和最多尾随一個下劃線的形式進行聲明(如“__spam”,這隻是慣例,而不是Python的強制要求)。當然,我們也可以給類的執行個體取任意名稱。例如:

Python中的異常由 try-except [exceptionname] 塊處理,例如:

外部庫可以使用 import [libname] 關鍵字來導入。同時,你還可以用 from [libname] import [funcname] 來導入所需要的函數。例如:

Python針對檔案的處理有很多内建的函數庫可以調用。例如,這裡示範了如何序列化檔案(使用pickle庫将資料結構轉換為字元串):

數值判斷可以連結使用,例如 1<a<3 能夠判斷變量 a 是否在1和3之間。

可以使用 del 删除變量或删除數組中的元素。

清單推導式(List Comprehension)提供了一個建立和操作清單的有力工具。清單推導式由一個表達式以及緊跟着這個表達式的for語句構成,for語句還可以跟0個或多個if或for語句,來看下面的例子:

全局變量在函數之外聲明,并且可以不需要任何特殊的聲明即能讀取,但如果你想要修改全局變量的值,就必須在函數開始之處用global關鍵字進行聲明,否則Python會将此變量按照新的局部變量處理(請注意,如果不注意很容易被坑)。例如:

【搜尋圓方圓,獲得“python教程”,“python下載下傳”,“python入門”類相關資訊。】