리스트내포, 리스트 표현식, 리스트 컴플리헨션 여러 방식으로 불린다.
comprehension를 사용하면 리스트 안에 반복문과 if문을 통해 간결하게 코드를 작성할 수 있는데,
파이썬만 가지고 있는 독특한 문법이다!
공부하다 이제 처음 알게 된건데 Comprehension은 리스트만 사용할 수 있는 것이 아니였다
dictionary
set
list
모두 사용이 가능 하다!
해석하는 방식이 다른데 내가 코딩을 배웠던 코딩 도장에서 너무 좋게 설명해줘서 이미지를 살짝 따왔다.
[표현식 for 항목 in 반복가능객체]
>>> result = []
>>> for i in range(10):
result.append(i)
# 위의 문장을 리스트 내포로 함축
result = [i for i in range(10)]
[표현식 for 항목 if 조건문]
>>> result = []
>>> for i in range(10):
if i % 2 ==0:
result.append(i)
# 위의 문장을 리스트 내포로 함축
result = [i for i in range(10) if i % 2 == 0]
[표현식 for 항목1 in 반복가능객체1 if 조건문1
for 항목2 in 반복가능객체2 if 조건문2
...
for 항목n in 반복가능객체n if 조건문n]
>>> result = []
>>> for i in range(2,10):
for j in range(1,10):
result.append(i*j)
# 위의 문장을 리스트로 함축
>>> result = [i*j for i in range(2,10)
for j in range(1,10)]
리스트와 다른점은 {}로 시작하고 키값과 벨류값이 있다는 부분
{ 키: 벨류 for 원소 in 반복 가능한 객체 }
{ 키: 벨류 for 원소 in 반복 가능한 객체 if문 }
[Python]0이 아닌값을 가져올 땐 nonzero (0) | 2021.05.11 |
---|---|
[Python]맨해튼 거리 공식(Manhattan distance) (0) | 2021.05.10 |
[Python]두개 이상의 시퀀스 동시에 활용 zip (0) | 2021.05.08 |
[ Python] 겹치지 않는 정렬하기 쉬운 combination (0) | 2021.05.06 |
[Python] 갯수 세기 Counter (0) | 2021.05.06 |