天天看點

Python--進階特性

進階特性

生成器

讀取生成器元素的兩種方式:

•g.next()

•for循環讀取; (生成器實質上是可疊代對象);

•清單生成式(清單生成式是Python 内置的非常簡單卻強大的可以用來建立 list的生成式), 當生成時元素即列印, 會占用記憶體;

 [i for i in range(100)]

Fibonacci數列:

1, 1,2, 3, 5,8, 13, 21...

# 生成 fib 數列的函數, x 代表最終生成的數列元素個數;

python中兩值交換

# 先構造右邊的元組(y,x),即(4,3);

# 然後将元組的值依次賦給x,y;

yield關鍵字

例1

例2

生成器實戰應用: 實作生産者消費者模型(有無緩沖區)

•無緩沖區

•有緩沖區

生成器實戰應用: 迷你聊天機器人

# 函數中 yield , 代表調用函數, 傳回值為生成器;

Python--進階特性

 本文轉自 無緣 51CTO部落格,原文連結:http://blog.51cto.com/13352594/2060883