Python - Order of Arithmetic Operators

황인용·2019년 12월 11일
0

Python

목록 보기
8/44

Order of Operators

파이썬 그리고 일반적으로 다른 프로그래밍들도 수학 연산을 할때 조심해야 할 점이 있다.
바로 어떠한 연산을 하느냐에 따라 실행되는 순서가 틀릴 수 있다는 점이다

result = 10 + 20 * 3

result의 값을 예상해보자
10 + 20 을 먼저 계산하여 90이라고 생각할 수 있지만, result의 값은 역시 70이다. * 가 + 보다 먼저 실행되서, 60에 10이 더해지기 때문에 70이라는 결과 값을 확인 할 수 있다.

파이썬에서 수학 연산 표현들의 우선순위는 다음과 같다.

  1. '( )'
  2. '**'
  3. '*', '/', 그리고 '%'
  4. '+' 와 '-' 

연산을 어떠한 방법으로 하였는냐에 따라 그리고 수학 연산 표현을 어떤 방법으로 했는냐에 따라 결과값이 달라지게 된다.

만약 위의 result 값을 90으로 받고자 하면 다음과 같이 표현하여야 한다

result = (10 + 20) * 3

Assignment

왼쪽 상단의 코드를 수정해서 다음과 같이 출력이 되도록 하세요:

result1 = 90
result2 = 1000
result3 = 0

소스

## Assignment
## 다음 코드를 수정하세요!
result1 = (10 + 20) * 3
result2 = 10**(2 + 1)
result3 = 15 % (4 - 1)

print(f"""
result1 = {result1}
result2 = {result2}
result3 = {result3}
""")

결과

image.png

profile
dev_pang의 pang.log

0개의 댓글