파이썬 3.8부터는 ‘바다코끼리 연산자(walrus operator)’를 사용하여 이러한 구조를 단순화할 수 있게 되었습니다. 이 이름은 눈과 엄니를 가진 바다코끼리 이모티콘에서 유래했습니다. 바다코끼리 연산자(:=)는 단순 명령문(statement)뿐만 아니라 표현식(expression) 안에서도 값을 할당할 수 있게 해 줍니다.
파이썬에서 사용되는 새로운 형식의 순환과 절반
>>> while not predicate(val := get_data()):
... print("Current value acceptable:", val)
...
Current value acceptable: 859
Current value acceptable: 296
Current value acceptable: 235
Current value acceptable: 805
Current value acceptable: 383
predicate() 함수가 while 문 안에 있으면 상황에 따라 순환이 한 번도 일어나지 않을 수 있습니다. while True인 경우에는 무조건 최소한 한 번 순환이 일어나지만, 특정 조건을 만족하면 순환 도중에 일찍 순환에서 벗어날 수 있습니다.5