1. 기본 구조
[표현식 for 변수 in 자료형]
# 기존 방식
y = []
for i in range(1,11,1):
y.append(i*2)
# 리스트 컴프리헨션 방식
y = [i*2 for i in range(1,11)]
2. 이중 구조
# 이중 for문 방식
x = [1,2,3]
y = [4,5,6]
for i in x:
for j in y:
print(i * j)
# 리스트 컴프리헨션 방식
x = [1,2,3]
y = [4,5,6]
z = [i * j for i in x for j in y]
3. 기본 if문
x = [2, -10, 5, -9, 5, -3]
negative = []
for i in x:
if i < 0 :
negative.append(i)
x = [2, -10, 5, -9, 5, -3]
negative = [i for i in fruits if i < 0]
3. if - else 문
- (중요) 조건에 따른 출력 형태는 앞쪽에 표현식을 작성한다.
- if 문에 대해 참값인 경우에 대해 출력되는 값은 맨 처음에 나오도록 한다.
x = [2, -10, 5, -9, 5, -3]
# 원하는 y 리스트 속 데이터 형태 y = [2, '음수', 5, '음수', 5, '음수']
y = []
for i in x:
if i < 0:
y.append('음수')
else:
y.append(i)
x = [2, -10, 5, -9, 5, -3]
# 원하는 y 리스트 속 데이터 형태 y = [2, '음수', 5, '음수', 5, '음수']
# 방법1
y = [i if i >= 0 else '음수' for i in fruits]
# 방법2
y = ['음수' if i < 0 else i for i in x]
파이썬에서는 List 자료구조를 활용하여 for 문을 활용한 로직을 작성해야 할 때,
되도록이면 리스트 컴프리헨션 방식을 통해 로직을 작성하는 것이 성능면에서 더 좋기 때문에 이 방법을 사용하는 것을 추천한다.
'language > Python' 카테고리의 다른 글
[Module] 파이썬 파일(.py)을 import 하는 방법 (0) | 2023.11.16 |
---|---|
[Function] 가변 인자(*args)와 키워드 가변 인자(**kwargs) (0) | 2023.11.16 |
[자료형] List - 자주 사용하는 메소드 함수 (0) | 2023.08.08 |
[Package/Library] Numpy 이해 및 사용 예시 (0) | 2022.11.20 |
Python으로 Kafka Producer 구현 (0) | 2022.10.27 |