2012年7月1日日曜日

開発環境

『初めてのPython 第3版』(Mark Lutz 著、夏目 大 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-393-7) のIV部(関数)17章(関数に関する高度なテクニック)練習問題2を解いてみる。

2.

ジェネレータはイテレータオブジェクトをサポートするオブジェクト。

コード(TextWrangler)

sample.py

#!/usr/bin/env python
#encoding: utf-8

def g(n):
 for x in range(n):
  yield 2 * x

n = 10
a = g(n)
print(type(a))
for x in range(n):
 print(next(a),end=' ')
print()
g=(2 * x for x in range(n))
print(type(g))
for x in g:
 print(x,end=' ')
print()

入出力結果(Terminal)

$ ./sample.py
<class 'generator'>
0 2 4 6 8 10 12 14 16 18 
<class 'generator'>
0 2 4 6 8 10 12 14 16 18 
$

0 コメント:

コメントを投稿