orig = [1,2,3,4,5,6]
evens = []
for i in orig :
if (i%2 == 0):
evens.append(i)
print(evens)
[ (변수 or 변수활용값) for (사용할변수이름) in (순회할_수_있는_값) ]
ex1)
orig = [1,2,3,4,5,6]
evens = [i for i in orig if i%2 == 0]
# even10 = [i*10 for i in orig if i%2 ==0]
ex2) using range
arr = [n for n in range(1, 11) if n%2==0]
arr = [n for n in range(1, 11) if n%2==0 if n%3==0]
명시적으로 "AND" statement 작성 시 SyntaxError 발생
arr = [n for n in range(1, 11) if n%2==0 or n%3==0]
명시적으로 "OR" statement 작성 시 SyntaxError 발생
arr = [[1, 2, 3],
[4, 5, 6],
[7, 8, 9],
[10, 11, 12],
]
flat = [i for row in arr for i in row ]
# equivalent to nested for loop
flat = []
for row in arr:
for i in row :
flat.append(i)
squared = [ [n ** 2 for n in row] for row in arr ]
#[[1, 4, 9], [16, 25, 36], [49, 64, 81], [100, 121, 144]]
출처/참고 :