[Python] 파이썬에서 증감 연산자 사용방법

    개발자라면 증감 연산자를 사용해보지 않는 사람이 없을 것이다. C나 Java 개발자라면 ++와 --와 같은 증감 연산자가 너무나도 익숙하다. 하지만 파이썬은 다른 프로그램 언어(Program Language)에서 사용하는 증감 연산자를 제공하지 않는다. 

     

    파이썬에서 증감연산자 사용 방법

     

    증감연산자 에러

    i = 0
    print(i++)

    이와 같이 매우 간단한 i값하게 i에 1을 증가시키는 증감연산자를 수행해봤는데 아래와 같은 에러가 발생한다.

    File "D:/Python/example_02.py", line 14
        print(i++)
                 ^
    SyntaxError: invalid syntax

    신택스 에러(SyntaxError)란 구문 오류를 뜻한다. 한마디로 저런 건 파이썬에서 제공하지 않는다는 의미이다. 위치에 따라 에러가 나는지 살피기 위해서 증감을 후위가 아니라 전위로 주어본다.

     

    전위 증감연산자

    i = 2
    print(++i)

    결과

    2

    ++를 후위로 처리하면 에러가 발생하였지만, 전위로 주었을 경우 에러가 발생하지 않았다. 그러나 자세히 보면 뭔가 이상한단걸 알 수 있다. 전위로 주면 값을 주어진 상태로 파이썬이 출력이 되어야 하는데 값이 초기값을 준 상태로 출력이 되었다.

     

    이번에는 print 상태에서 출력하지 않고 아래와 같이 먼저 ++i를 한 후 i를 프린트로 출력해보았다.

    i = 2
    ++i
    print(i)

    그러나 위의 코드도 결과는 "2"가 동일하게 나왔다.

     

    전위로 처리한 증감연산자

    사실 이 원인은 ++가 증감연산자 처리가 된 것이 아니라 형을 + (양수)로 변환을 한 것일 뿐 우리가 생각하는 증감연산자는 파이썬에서 제공하지 않는다. 이는 파이썬이 가독성을 중시하는데 ++와 같은 값은 예상치 못한 값이 나올 수 있다는 판단이기 때문이다.

     

    파이썬에서 증감연산자 방법

    결국 파이썬은 가독성 측면 뿐만 아니라 더 확실한 방법이 있기 때문에 ++와 --와 같은 증감연산자를 선호하지 않는다는 것을 알 수 있다.

     

    증가연산

    i = 0
    i += 1
    print(i)

    감소연산

    i = 2
    i -= 1
    print(i)

    파이썬에서 증감연산자 처리 결과

    위와 같이 파이썬에서는 i += 증가값과 같은 형태로 증감연산자를 사용하면 된다.

     

    반응형

    댓글

    Designed by JB FACTORY