開発環境
- OS X Lion - Apple(OS)
- TextWrangler(Text Editor) (いずれはBBEditを入手したい!)
- Script言語: Python
『初めてのPython 第3版』(Mark Lutz 著、夏目 大 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-393-7)のIV部(関数)の17章(関数に関連する高度なテクニック)の練習問題1を解いてみる。
1.
リスト内包表記の角括弧を丸括弧に変えると、ジェネレータ式に変わる。
違いは、リスト内包表記の場合は結果のリスト全体を一度に作成してメモリに保持するのに対して、ジェネレータ式の場合はジェネレータオブジェクトを戻して、各要素は処理を一度反復するたびに1つずつ生成する。
この違いにより、実行速度はリスト内表記の方がやや速くなる。ジェネレータ式の方がメモリの最適化(節約)になる。
実際に戻り値の違いを確認。
入出力結果(Terminal)
0 コメント:
コメントを投稿