반응형
리스트 컴프리헨션(List Comprehension)
대괄호 ('[ ]') 로 감싸고 내부에 for문과 if 문 반복 사용하며 조건에 만족하는 것만 리스트로 생성 가능하다.
for, if 문 대신 사용하는 이유
우리가 보통 아는 조건문, 반복문인 for, if 를 사용하지 않고 리스트 컨프리션을 사용하는 이유는
for, if 문을 사용한 것 보다 간결하고 속도도 빠르기 때문이다.
예시
아래의 리스트로 담겨져있는 변수 대상으로 진행
- 리스트 컴프리헨션 방법이 아닌 for, if문을 사용해서 리스트 생성
save_test =[] # 빈리스트 생성
for test in test_list: # 반복문을 통해 test_list 에 있는 요소 한 개씩 내려받음
if test.startwith("a"): # 요소 안에 "a" 가 들어있을 경우
save_test.append(test) # 빈리스트 내에 넣음
결과값:
- 리스트 컴프리헨션을 사용해서 한줄로 리스트 생성
for 문과 중첩 if 문 예시
- 리스트 컴프리헨션 방법이 아닌 for, if문을 사용해서 리스트 생성
save_test =[] # 빈리스트 생성
for test in test_list: # 반복문을 통해 test_list 에 있는 요소 한 개씩 내려받음
if test.startwith("a"): # 요소 안에 "a" 가 들어있을 경우
if not test.endswith("1") # 마지막 글자에 1이 아닌 경우
save_test.append(test) # 빈리스트 내에 넣음
결과 값:
- 리스트 컴프리헨션을 사용해서 한줄로 리스트 생성
참고) [python] 문자열 내 특정 문자 찾기(startswith, endswith)
'Python' 카테고리의 다른 글
[Python] DB 연결 (sqlalchemy 사용방법 - to_sql, read_sql, connect, commit, rollback) (0) | 2023.12.13 |
---|---|
[python] split, slice, join | 데이터 프레임, 리스트 문자열 나누기 합치기(특정문자 기준 앞, 뒤 출력) (0) | 2023.09.14 |
[python] Multi-Thread 동시성/병렬성 프로그래밍(시간단축) (0) | 2023.08.11 |
[Python] dataframe append 와 concat (0) | 2023.08.04 |
[python] 문자열 내 특정 문자 찾기(startswith, endswith) (0) | 2023.07.30 |