Python高級特性

Python力圖簡潔,Python中非常有用的高級特性,使得能以更少的代碼做更多的事情,代碼越少,則開發效率越高。以下是Python的幾個高級特性.
1.切片
當我們要去獲取list或者tuple的部分元素時,以前的思路是將其一一列舉處理。Python提供了切片操作符來簡化這種操作。
在這裏插入圖片描述
L[0:3]表示,從索引0開始取,直到索引3爲止,但不包括索引3。即索引0,1,2,正好是3個元素。而且如果第一個索引值爲0的話可以省略不寫。L[m,n],表示從索引值爲m的元素開始取,取到索引值爲n-1的元素。
而且還可以倒着取,倒數第一個元素的索引爲-1
在這裏插入圖片描述
還可以實行每幾個取一個的方法,上面這個就是每兩個取一個。
tuple也可以使用切片,需要注意的是,切片的結果仍然是元組類型不可改變。

2.迭代

如果給定一個list或tuple,我們可以通過for循環來遍歷這個list或tuple,這種遍歷我們稱爲迭代(Iteration)。

在Python中迭代通過 for…in來完成,Python的for循環不僅可以用在list或tuple上,還可以作用在其他可迭代對象上,例如dict。
因爲dict不是按照list的方式順序排列,所以dict迭代出的結果順序很可能不一樣
在這裏插入圖片描述還有就是當需要對list實現下標循環時的操作,需要用到一個內置函數enumerate,它會使得list變成索引-元素對
在這裏插入圖片描述3.列表生成式
倘若要生成一個1到10的列表,我們通常的第一做法就是,一個一個輸。這種方法太麻煩,所以Python有內置的生成式。
在這裏插入圖片描述
那我們要是想生成一個一到十每個數的平方組成的列表,以前的思路就是利用循環,從1到10,然後平方,再使用append將元素存入列表

>>>L = []
>>>for x in range(1,11):
         L.append(x*x)
>>>L 
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

而現在列表生成式一個式子便可以完成在這裏插入圖片描述
同時呢也可以在for後面再設置if條件來限制,比如必須要能夠被3整除在這裏插入圖片描述
所以用途是比較廣的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章