728x90
Python에서 :=는 선언과 할당을 동시에 수행하는 대입 표현식(assignment expression)을 나타냅니다. 이 표현식은 PEP 572에서 소개된 "walrus operator"로도 알려져 있습니다.
일반적으로 := 표현식은 조건문이나 반복문 내에서 사용될 때 유용합니다. 이를 통해 변수를 조건식의 결과나 반복문의 값으로 선언하고 할당할 수 있습니다.
다음은 := 표현식을 사용한 예제입니다:
# 조건문에서 사용 예제
if (n := len(some_list)) > 10:
print(f"List length is {n}, which is greater than 10.")
# 반복문에서 사용 예제
while (line := file.readline()):
print(line)
위의 코드에서 첫 번째 예제는 some_list의 길이를 n에 선언과 동시에 할당하고, n의 값이 10보다 큰지를 확인합니다.
두 번째 예제는 file에서 한 줄씩 읽어오는 동안 line에 선언과 동시에 할당하고, line이 빈 문자열이 아닐 때까지 반복합니다.
이와 같이 := 표현식은 코드를 더 간결하게 만들어주고, 변수를 조건식이나 반복문의 결과로 효율적으로 활용할 수 있게 해줍니다.