일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Window Function
- 표준편차
- 자연어 논문 리뷰
- 설명의무
- 그룹바이
- LSTM
- SQL 날짜 데이터
- CASE
- Statistics
- 서브쿼리
- sigmoid
- 카이제곱분포
- 논문리뷰
- leetcode
- 코딩테스트
- sql
- nlp논문
- inner join
- NLP
- 자연어 논문
- MySQL
- 자연어처리
- airflow
- t분포
- update
- GRU
- torch
- 짝수
- HackerRank
- SQL코테
- Today
- Total
HAZEL
[ Python : Sequence ] List, Comprehension( 다중 if 문 , filter, map 사용 ), 본문
[ Python : Sequence ] List, Comprehension( 다중 if 문 , filter, map 사용 ),
Rmsid01 2022. 10. 5. 23:24Chapter 03 : Sequence
: 요소가 연속적으로 나열되어있는 자료형
- 자료가 담겨있는 갯수
1 ) 컨테이너 형 ( container ) : 서로 다른 자료형을 담는다.
ex, list, tuple , collections.deque
2 ) 플랫형 ( flat ) : 단일 자료형만 담는다. 한개의 자료형
ex, str, bytes , bytearray , array.array , memoryview
- 가변형 / 불변형
1 ) 가변형 : list, bytearray , array.array , memoryview , deque
2 ) 불변형 : tuple, str , bytes
1. List
: 수정가능한, 자료형
chars = 'abcdefg'
list1 = []
for s in chars :
list1.append(ord(s))
print(list1)
# output : [97, 98, 99, 100, 101, 102, 103]
1 ) Comprehending List
: 위에서 반복문으로 만든 list를 아래의 Comprehension 으로 간단하게 만들 수 있다. 속도 측면에서도 더 좋다.
list2 = [ord(s) for s in chars]
print( list2 )
# output: [97, 98, 99, 100, 101, 102, 103]
- Comprehension 을 사용하는 다른 방법.
a. 단일 if 문을 사용하기.
: if 문을 사용하여, 내가 원하는 조건의 값만 받아올 수 있다.
list3 = [ord(s) for s in chars if ord(s) > 100]
# output : [101, 102, 103]
b. 다중 If문 사용하기
: 다중 if 문을 사용하여, 조건을 받아올 수 있다.
c. map 사용하기
: map 은 여러개의 데이터를 지정된 함수로 처리해주는 함수이다.
보통은 map( 변환 함수, 리스트 ) 혹은 map( 변환 함수, 튜플 ) 로 사용한다.
map(lambda x : x if x==0 else 1) 처럼, lambda를 이용하여 조건을 걸 수 도 있습니다.
list4 = list(map(ord, chars))
d. filter 사용하기
: filter ( 함수, 값 ) 을 넣어서, 값에 대해서 원하는 조건의 값만 나오도록 해준다.
list5 = list(filter(lambda x: x > 100, map(ord, chars)))