Python
[Python] list comprehension
잘할수있을거야
2022. 1. 20. 12:51
간결한 문법으로 리스트를 생성할 수 있는 것 같다.
1. 0~9 값 리스트에 추가하여 리스트 생성
for문 사용시
li = []
for item in range(10):
li.append(item)
print(li)
list comprehension 사용시
li = [item for item in range(10)]
print(li)
list comprehension에 for if 를 섞어서 사용가능
0~9 값중 짝수만 리스트에 추가하여 리스트 생성
for+if문 사용
li = []
for item in range(10):
if item % 2 == 0:
li.append(item)
print(li)
list comprehension 사용
li = [item for item in range(10) if item % 2 == 0]
print(li)
위의 코드에서 li= [item for........ if......]의 item 부분은 값이 아닌 expression이 평가될 수 있는 부분이다.
expression에 list comprehension이 들어간 중첩 list comprehension
matrix = [[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12]]
print([[row[i] for row in matrix] for i in range(4)])