ROKO

[Python] Comprehension 본문

Computer Science/Programming Language

[Python] Comprehension

RO_KO 2023. 3. 4. 14:13
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 > Programming Language' 카테고리의 다른 글

[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