반응형

컴프리헨션 3

[파이썬 기초] 셋 컴프리헨션

파이썬 자료구조인 셋을 컴프리헨션을 이용해 생성해보자. 사용법은 다음과 같다. { 표현식 for 표현식 in 순회가능객체 } 얼핏보면 아래 딕셔너리 컴프리헨션과 형식이 비슷하다. { 표현식 : 표현식 for 표현식 in 순회가능객체 } 표현식 중간에 콜론(:)이 있는것을 제외하고는 양식이 비슷하다. 헷갈리지 말자. 예제1) 1 부터 9까지 홀수의 셋 1. range(10)을 통해 1~9까지의 수를 n에 할당 2. if 문으로 n%2 == 1 인 값만을 추출 3. 추출된 값으로 셋 생성 예제2) 셋 생성 시 같은 값을 여러번 부여하면 어떻게 될까? 리스트로 [1,2,2,3,3,3,4,4,4,4] 와 같이 값을 부여한다면... 실행해보자 당연히 리스트는 중복값을 허용하지 않기 때문에 {1,2,3,4} 라는 ..

IT 2019.04.10

[파이썬 기초] 딕셔너리 컴프리헨션

앞서 리스트 컴프리헨션을 이용하여 여러가지 리스트 자료구조를 만들어보았다. 딕셔너리도 컴프리헨션으로 간단하게 생성 할 수 있다. 수식은 다음과 같다. {키 : 값 for 표현식 in 순회가능객체(list, set, range() 등) } if문을 이용하여 값을 걸러내고 싶다면 다음과 같이 사용한다. {키 : 값 for 표현식 in 순회가능객체(list, set, range() 등) if (앞의 표현식을 이용한 조건) } 수식이 너무 어려워 보이니 예제를 살펴보자. 예) 먼저 키가 정수이고, 값이 정수의 제곱인 딕셔너리를 만들어보자. 편의상 0~4까지만 해보자. 결과값은 아래와 같이 출력될 것이다. 결과 딕셔너리 = {0:0, 1:1, 2:4, 3:9, 4:16} 1) for문 이용 2) 딕셔너리 컴프리헨..

IT 2019.04.09

[파이썬 기초] 리스트 컴프리헨션(comprehension)

파이썬에서 컴프리헨션은 간단명료하게 자료구조를 만드는 방법입니다. 일반적으로 리스트를 만드는 방법을 살펴보겠습니다. 0부터 10까지 수 중에 홀수만으로 리스트를 작성해 보죠. 최종 리스트는 [1, 3, 5, 7, 9] 가 될 것입니다. 1. 수작업 제일 간단하게 리스트를 만드는 방법은 리스트에 일일이 값을 추가시켜주는 방법일 것입니다. 리스트의 append() 메서드를 이용하면 되죠. 이렇게 다섯줄 만으로(?) 리스트를 생성했습니다. 그런데, 리스트의 크기가 백개, 만개, 백만개로 커진다면, 답이 없는 방법이겠죠. 2. for문과 range()를 이용한 방법 조금만 코드를 줄여보겠습니다. 코드가 확실히 줄어들었습니다. range()를 이용해서 0~9까지 반복하면서 num 나누기 2를 했을 때 나머지가 1..

IT 2019.04.04
반응형