변수 교환하기

파이썬으로 프로그램을 만들다 보니 편리한 기능을 발견했다.

A = B

위와 같이 쓰면 B의 값이 A에 대입된다.

A, B = C, D

위와 같이 쓰면 C의 값이 A에 들어가고 D의 값이 B에 들어간다.

A, B = B, A

위와 같이 쓰면 A와 B의 값이 교환된다.

이걸 응용해서 좌표를 회전시키는 함수를 만들 수 있다.

angle = 10.0

x, y = x*cos(angle)+y*sin(angle), -x*sin(angle)+y*cos(angle)

참 쉽죠?

변수 교환하기”에 대한 6개의 생각

  1. solariser

    한가지더 해당 기능은 언패킹 이기 때문에 리스트, 튜플에도 동일하게 적용할 수 있습니다.

    a, b, c = [0, 1, 2]

    리스트, 튜플을 리턴하는 함수값에도 동일하게 적용할 수 있습니다.

    _, ext = os.path.splitext(‘a.txt’) # 파일 명을 리턴하지만, 필요없엉~ 하는 것 표현할수 있습니다.

    마지막 응용으로 리스트 슬라이싱에도 적용됩니다.

    li = range(10)

    a, b = li[1:3]

    오오미…

    응답
  2. courier

    한번만 등장하더라도 가독성이나 유지보수 측편에서 독립적으로 구현 가능한 부분은 함수화하는게 유리하죠.

    응답

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 Akismet을 사용하여 스팸을 줄입니다. 댓글 데이터가 어떻게 처리되는지 알아보세요.