by shigemk2

当面は技術的なことしか書かない

エキスパートPythonプログラミング 内包表記

07-190820.py

# -*- coding: euc-jp -*-"
# リストを操作するコードをループごとにインタプリタ上で処理している
# カウンタの操作もループごとにインタプリタ上で処理する必要がある

size = 10
L = []
i = 0
while i < size:
    if i % 2 == 0 and i != 4:
        L.append(i)
    i += 1

print L # [0, 2, 6, 8]

# そこでリスト内包表記
# コードの可読性が上がり、バグを減らす
print [i for i in range(10) if i % 2 == 0 and i != 4] # [0, 2, 6, 8]

シーケンスの要素を処理するためにループを仕様する場合は、
常にリスト内包表記が出来ないか考えること。