반응형

파이썬 3.8,  := 연산자(Walrus Operator)

 

글. 수알치 오상문

 

:= 바다코끼리 연산자는 대입 연산을 하고 그 결과를 바로 돌려주므로 코드를 더 간결하게 만들 수 있다.

 

[예제 1]
data = [1, 2, 3, 4, 5, 6]
check = 5

# 조건에서 변수에 값을 저장하고, 결과 값과 비교
if (n := len(data)) > check:
    print(f"The list has more than {check} items.")
else:
    print(f"The list has less than {check} items.")

print(f"List has {n} items")

[실행 결과]
The list has more than 5 items.
List has 6 items


[예제 2]
sample_data = [
    {"userId": 1, "name": "길동", "pass": False},
    {"userId": 2, "name": "영희", "pass": False},
    {"userId": 3, "name": "철수", "pass": True},
    {"userId": 4, "name": "", "pass": True}
]
 
print("Python 3.8 바다코끼리 연산자 이용") 
for entry in sample_data:
    print(f'Found name: "{name}"' if (name := entry.get("name")) else "Not Found name")
  
print("이전 방식")
for entry in sample_data:
    name = entry.get("name")
    print(f'Found name: "{name}"' if name else "Not Found name")

[실행 결과]
Python 3.8 바다코끼리 연산자 이용
Found name: "길동"
Found name: "영희"
Found name: "철수"
Not Found name
이전 방식
Found name: "길동"
Found name: "영희"
Found name: "철수"
Not Found name

반응형

+ Recent posts