자주 써보는 수밖에 없다.
result = [] # 빈 리스트에
for num in range(5):
result.append(num) # 값을 추가하고 싶을 때
print(result)
# [0, 1, 2, 3, 4]
result = [] # 빈 리스트에
for num in range(1, 6):
result.append(num + 5) # 5씩 더해서 추가한다.
print(result)
# [6, 7, 8, 9, 10]
[결과, for문, if조건문]
위의 for문을 1라인으로 줄이는 스타일
result = [num + 5 for num in range(1, 6)] # [list로 담기 위해]
print(result) # [6, 7, 8, 9, 10]
# 1~10 중 '짝수만' 5씩 증가... if문 추가
result = [num + 5 for num in range(1, 10) if num % 2 == 0]
print(result)
# [7, 9, 11, 13]
# original
result = [num * 3 for num in range(1, 99) if num % 2 == 0]
print(result)
# Comprehension
for num in range(1, 99): # 중간에 for문.
if num % 2 == 0: # 조건이 맨 뒤로,
result.append(num * 3) # 최종 결과가 맨 앞,
print(result)
# original (이중 for문)
for i in range(2, 10):
for j in range(1, 10):
print("{} × {} = {}".format(i, j, i*j))
# Comprehension
multiply = ["{}×{}={}".format(i, j, i*j) for i in range(2, 10) for j in range(1, 10)]
# 리스트 = [리턴i*j은 맨 앞, for문 중앙, (if문 맨 뒤)]
print(multiply)