ROKO
[Python] Comprehension 본문
728x90
List
[x for x in range(10) if True]
리스트를 만들때 긴 코드를 한줄로 간편히 만들 수 있다. 짧은 코드가 필요할때 comprehension을 차용하면 pythonic 한 코드를 구현하는데 많은 도움이 된다. 하지만 반복문이 많거나 조건문이 많은 경우 한줄이라도 너무 길어지면 가독성이 떨어지기에 comprehension을 지양하는 편이 좋다.
comprehension은 내부에서 for문과 if문을 얼마든지 반복할 수 있다!
Dictionary
{ x:0 for x in range(10)}
Set
{ x for x in range(10)}
Tuple
( x for x in range(10) )
Tuple은 저 comprehension값을 출력하면 generator라고 불리는 특정한 object객체 명과 주소값이 나오게 된다. 나머지는 내부값이 그대로 출력되는데 왜 그런걸까? genrator는 무엇일까?
728x90
'Computer Science' 카테고리의 다른 글
[Python] map, filter (0) | 2023.03.04 |
---|---|
[Python] lazy evaluation (0) | 2023.03.04 |
[Python] Error (0) | 2023.03.04 |
[Python] decorator (0) | 2023.03.04 |
Comments