1. 程式人生 > >Python學習筆記--3、高階特性-切片、迭代、列表生成式、生成器、迭代器

Python學習筆記--3、高階特性-切片、迭代、列表生成式、生成器、迭代器

廖老師在這個地方提到了,在Python 中,並不是寫的程式碼越多越好,而是寫的程式碼越少越好,月簡單越好。

1、切片

 什麼是切片,簡單來說就是對list或者tuple中的部分元素進行取出操作。例子如下:

應注意的是,python的首位的元素的編號是0,所以,要確定好[] 中要填寫的內容。

2、迭代

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

有以下兩種的迭代的方式,

3、列表生成式

  關於列表生成式,在我看來實際上,就是Python 的for 迴圈的基本的使用的高階用法。

4、生成器

我們直接建立的那種的列表的形式,是你建立多大的列表,就會給你多大的記憶體的限制,但是列表的容量肯定是有限的, 所以,我們如果只需要訪問一個大表中的前面的幾個資料, 我們實際上就不需要建立那麼大的表,從而, 我們可以通過生成器的方法,當我們需要這個的時候,再加入新的元素

建立Lg的區別僅在於最外層的[]()L是一個list,而g是一個generator。

我們可以直接打印出list的每一個元素,但我們怎麼打印出generator的每一個元素呢?

如果要一個一個打印出來,可以通過next()函式獲得generator的下一個返回值:

,這樣實在是複雜,我們可以使用for

下面就介紹一個常用的生成器的例子的編寫的方案,它的目前是能夠乘勝斐波那契數列,所以,如下說所示的就是我們寫成的生成器的模式,當然,你也可以寫成函式的形式。

5、迭代器、