이름이 바다코끼리 연산자인 이유는 생긴게 바다코끼리 닮아서.


:=


닮았쥬?



정식 이름은 대입 표현식(Assignment Expression) 인데, 쉽게 말하자면 특별한 구문 안에서 변수를 대입하는 연산자임.


다른 언어들 새로운 연산자 팍팍 도입하는 동안 커두새끼 혼자 "직관적이지 않음" 지랄틀면서 끝까지 안넣어주던 연산자인데


파이썬 3.8에 드!디!어! 넣어줬다고 한다. 2019년 10월에 넣어준거라 아직도 모르는 사람이 많은듯.




코드 예제:


a = [1, 2, 3, 4]

n = len(a)

if n > 5:

    print(f"리스트의 길이가 5를 넘습니다. 현재 리스트 길이: {n}")



이랬던 코드가



a = [1, 2, 3, 4]

if (n := len(a)) > 5:

    print(f"리스트의 길이가 5를 넘습니다. 현재 리스트 길이: {n}")



이렇게 바뀐다고 보면 된다.



while 문에 사용하면 for in + 제너레이터를 쓰는 것보다 가독성이 더 좋아진다.


while line := file.readline():

    process(line)




내가 제일 좋아하는 사용방법은 리스트 생성에 사용하는 거임


y = f(x)

mylist = [y, y+1, y+2]


이 코드를


mylist = [y := f(x), y+1, y+2]


이렇게 바꿔버릴 수 있음. 존나 짱임.