怎么能快速地掌握Python?這是和朋友閑聊時談起的問題。
Python包含的內容很多,加上各種標準庫、拓展庫,亂花漸欲迷人眼。我一直希望寫一個快速的、容易上手的Python教程,而且言語簡潔,循序漸進,讓沒有背景的讀者也可以從基礎開始學習。我將在每一篇中專注于一個小的概念,希望在閑暇時可以很快讀完。
小提醒
- 教程將專注于Python基礎,語法基于Python 2.7 (我會提醒Python 3.x中有變化的地方,以方便讀者適應3.X的情況)。測試環境為Linux。標準庫的一些包不適用于Windows平臺。如果文中的程序無法在你的平臺上運行,歡迎討論。
- 我將專注于Python的主干,以便讀者能以最快時間對Python形成概念。
- Linux命令行將以$開始,比如 $ls, $python
- Python命令行將以>>>開始,比如 >>>print 'Hello World!'
- 注釋會以#開始
建議
- 將教程中的命令敲到Python中看看效果。
- 看過教程之后,可以進行一些練習。
- 參與文章評論區的討論,可以更好的積累經驗。
教程內容
sequence 序列
sequence(序列)是一組有順序的元素的集合。
(嚴格的說,是對象的集合,但鑒于我們還沒有引入“對象”概念,暫時說元素)
序列可以包含一個或多個元素,也可以沒有任何元素。
我們之前所說的基本數據類型,都可以作為序列的元素。元素還可以是另一個序列,以及我們以后要介紹的其他對象。
序列有兩種:tuple(定值表; 也有翻譯為元組) 和 list (表)
- >>>s1 = (2, 1.3, 'love', 5.6, 9, 12, False) # s1是一個tuple
- >>>s2 = [True, 5, 'smile'] # s2是一個list
- >>>print s1,type(s1)
- >>>print s2,type(s2)
tuple和list的主要區別在于,一旦建立,tuple的各個元素不可再變更,而list的各個元素可以再變更。
一個序列作為另一個序列的元素
- >>>s3 = [1,[3,4,5]]
空序列
- >>>s4 = []
元素的引用
序列元素的下標從0開始:
- >>>print s1[0]
- >>>print s2[2]
- >>>print s3[1][2]
由于list的元素可變更,你可以對list的某個元素賦值:
- >>>s2[1] = 3.0
- >>>print s2
如果你對tuple做這樣的操作,會得到錯誤提示。
所以,可以看到,序列的引用通過s[]實現, int為下標
其他引用方式
范圍引用: 基本樣式[下限:上限:步長]
- >>>print s1[:5] # 從開始到下標4 (下標5的元素 不包括在內)
- >>>print s1[2:] # 從下標2到最后
- >>>print s1[0:5:2] # 從下標0到下標4 (下標5不包括在內),每隔2取一個元素 (下標為0,2,4的元素)
- >>>print s1[2:0:-1] # 從下標2到下標1
從上面可以看到,在范圍引用的時候,如果寫明上限,那么這個上限本身不包括在內。
尾部元素引用
- >>>print s1[-1] # 序列最后一個元素
- >>>print s1[-3] # 序列倒數第三個元素
同樣,如果s1[0:-1], 那么最后一個元素不會被引用 (再一次,不包括上限元素本身)
字符串是元組
字符串是一種特殊的元素,因此可以執行元組的相關操作。
- >>>str = 'abcdef'
- >>>print str[2:4]
總結
tuple元素不可變,list元素可變
序列的引用 s[2], s[1:8:2]
字符串是一種tuple
完整教程可查看:Python教程
作者:Vamei 出處:http://www.cnblogs.com/vamei 歡迎轉載,也請保留這段聲明。謝謝!