코딩하는 해맑은 거북이

[Python] for if-else 한줄로 작성하는 방법 본문

Python/기본

[Python] for if-else 한줄로 작성하는 방법

#CJE 2023. 6. 14.
해당 글은 아래의 4가지를 다룬다.
🔷 1중 for 문
🔷 2중 for 문
🔷 for if
🔷 if-else for

 

🔷 1중 for 문

arr1 = list(range(1, 6))   # [1, 2, 3, 4, 5]
arr2 = []
for i in arr1:
    arr2.append(i**2)
arr3 = [i**2 for i in arr1]
print(f'arr2 : {arr2}')
print(f'arr3 : {arr3}')

    arr2 : [1, 4, 9, 16, 25]
    arr3 : [1, 4, 9, 16, 25]

 

🔷 2중 for 문

arr1 = list(range(1, 6))   # [1, 2, 3, 4, 5]
arr2 = []
for i in arr1:
    for j in arr1:
        arr2.append(i*j)
arr3 = [i*j for j in arr1 for i in arr1]
print(f'arr2 : {arr2}')
print(f'arr3 : {arr3}')

    arr2 : [1, 2, 3, 4, 5, 2, 4, 6, 8, 10, 3, 6, 9, 12, 15, 4, 8, 12, 16, 20, 5, 10, 15, 20, 25]
    arr3 : [1, 2, 3, 4, 5, 2, 4, 6, 8, 10, 3, 6, 9, 12, 15, 4, 8, 12, 16, 20, 5, 10, 15, 20, 25]

 

🔷 for if

arr1 = list(range(1, 6))   # [1, 2, 3, 4, 5]
arr2 = []
for i in arr1:
    if i % 2 == 0:
        arr2.append(i)
arr3 = [i for i in arr1 if i % 2 == 0]
print(f'arr2 : {arr2}')
print(f'arr3 : {arr3}')

    arr2 : [2, 4]
    arr3 : [2, 4]

 

🔷 if-else for

arr1 = list(range(1, 6))   # [1, 2, 3, 4, 5]
arr2 = []
for i in arr1:
    if i % 2 == 0:
        arr2.append(i)
    else:
        arr2.append(100)
arr3 = [i if i % 2 == 0 else 100 for i in arr1]
print(f'arr2 : {arr2}')
print(f'arr3 : {arr3}')

    arr2 : [100, 2, 100, 4, 100]
    arr3 : [100, 2, 100, 4, 100]

 

Comments