Small Grey Outline Pointer python :: list comprehension 리스트 컴프리헨션
본문 바로가기
Dev./Python

python :: list comprehension 리스트 컴프리헨션

by sso. 2022. 8. 2.

 

 

r1=[1,2,3,4,5,6]
r2=[]
for i in r1:
    r2.append(i*2)
print(r2)

[2,4,6,8,10,12]

 

r1 = [1,2,3,4,5]
r2 = [x * 2 for x in r1] #리스트 컴프리헨션의 기본 구성
print(r2)

[2,4,6,8,10]

 

 

 

컴프리헨션을 이용하여 값을 10씩 증가시킨 다른 리스트 생성하기

# %% 컴프리헨션을 이용하여 값을 10씩 증가시킨 다른 리스트 생성하기
d1 = [1,2,3,4,5,6] 
d2 = [x + 10 for x in d1]
print(d2)

[11,12,13,14,15,16]

 

 

 

for문을 리스트 컴프리헨션으로 바꾸기

# %% for문
r1 = [1,2,3,4,5,6,7,8,9,10]
r2 =[]
for i in r1:
    if i % 2: # true나 false가 결과로 오는 자리 뒤의 == 0 생략가능
        r2.append(i)
print(r2)

[1,3,5,7,9]

 

# %% 리스트 컴프리헨션
r1 = [1,2,3,4,5,6,7,8,9,10]
r2=[]
r2 =[x for x in r1 if x %2]
print(r2)

[1,3,5,7,9]

 

 

# %% 기존의 for문
s1 = ['red','blue']
s2 = ['green','yellow','pink']
s3 = []
for i in s1:
    for j in s2:
        s3.append(i+j)
print(s3)
# %% 리스트 컴프리헨션으로 바꾸기
s1 = ['red','blue']
s2 = ['green','yellow','pink']
s3 = [i + j for i in s1 for j in s2]
print(s3)

['redgreen', 'redyellow', 'redpink', 'bluegreen', 'blueyellow', 'bluepink']

['redgreen', 'redyellow', 'redpink', 'bluegreen', 'blueyellow', 'bluepink']

 

 

# %% 구구단
gugu = [i * j for i in range(2,10) for j in range(1,10)]
gugugu = [i * j for i in range(2,10) for j in range(1,10) if (i * j)%2]
print(gugu) #구구단 출력하기
print(gugugu) #홀수 값만 출력하기

 

 

 


 

 

# %% 빈 리스트 r1을 만들고 리스트에 내용을 1~10까지 채워라 
# 그 리스트에 저장된 내용을 2배씩 증가시켜 r2 리스트에 담기
# 메인함수에 담아서 실행하는 형태로 작성하기

def main():
    r1=[]
    r1 = [x for x in range(1,11)]
    r2 = [x * 2 for x in r1]
    print(r1)
    print(r2)

main()

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

[2, 4, 6, 8, 10, 12, 14, 16, 18, 20]

 

 

 

# %% 위의 문제에서 r1의 홀수만 출력하기

def main():
    r1=[]
    r1 = [x for x in range(1,11)]
    r1 =[x for x in r1 if x % 2]
    print(r1)

main()

[1,3,5,7,9]

 

 

 

 

 

 

 

 

728x90

'Dev. > Python' 카테고리의 다른 글

python :: lambda  (0) 2022.08.05
python :: iter 이터레이터  (0) 2022.08.04
python :: 얕은 복사(shallow copy)  (0) 2022.08.02
Python :: mutable / immutable  (0) 2022.07.26
Python :: 예외처리 / 사용자 예외 처리, 파일 입출력  (0) 2022.07.20

댓글