Python은 다양한 산술 연산자를 제공한다. 이 연산자들은 수학적 및 논리적 연산의 기본적인 구성 요소이다. 이 글에서는 주요 산술 연산자들을 자세히 살펴보고, 각 연산자에 대한 예제 코드를 제공하며, 그들의 기능을 명확히 설명할 것이다.
덧셈 연산자는 +
로 표시되며 가장 기본적인 산술 연산 중 하나이다. Python에서 덧셈 연산자는 숫자뿐만 아니라 문자열과 리스트에도 사용할 수 있다. 숫자와 함께 사용하면 그 값을 합산한다. 문자열에 적용할 경우, 해당 문자열들을 연결한다. 리스트에 대해서는 그들을 병합한다.
# 숫자 덧셈
a = 5
b = 3
print(a + b)
# 결과: 8
# 문자열 연결
str1 = "Hello"
str2 = "World"
print(str1 + " " + str2)
# 결과: Hello World
# 리스트 병합
list1 = [1, 2, 3]
list2 = [4, 5, 6]
print(list1 + list2)
# 결과: [1, 2, 3, 4, 5, 6]
뺄셈 연산자는 -
로 표현되며, 한 값에서 다른 값을 뺀다. 이 연산자는 주로 숫자 값에 사용된다. 그러나 Python에서는 문자열이나 리스트와 같은 다른 데이터 유형에 대한 뺄셈 연산을 지원하지 않는다. 뺄셈 연산자를 사용할 때 두 피연산자가 숫자 데이터 유형(정수 또는 부동 소수점)인지 확인하는 것이 중요하다.
# 숫자 뺄셈
x = 10
y = 4
print(x - y)
# 결과: 6
# 문자열에서의 뺄셈 시도 (이 경우 오류 발생)
str3 = "abc"
str4 = "a"
print(str3 - str4)
# TypeError: '-' 연산자에 대한 피연산자 유형이 지원되지 않는다.
곱셈 연산자는 *
로 나타나며 두 숫자를 함께 곱한다. Python은 숫자 외에도 문자열과 리스트에 대한 곱셈 연산을 지원한다. 문자열과 정수에 적용하면 지정된 정수 횟수만큼 문자열을 반복한다. 마찬가지로 정수로 리스트를 곱하면 해당 내용을 복제하여 요소가 반복된 새 리스트를 생성한다. 그러나 Python에서는 두 문자열이나 두 리스트를 직접 곱하는 것은 지원되지 않는다.
# 숫자 곱셈
p = 7
q = 6
print(p * q)
# 결과: 42
# 문자열 반복
str5 = "반복 "
print(str5 * 3)
# 결과: 반복 반복 반복
# 리스트 반복
list3 = [1, 2]
print(list3 * 3)
# 결과: [1, 2, 1, 2, 1, 2]
나눗셈 연산자는 /
로 표현되며 한 숫자를 다른 숫자로 나눈다. Python 3.x에서는 결과가 정수인지 여부와 관계없이 /
연산자는 항상 부동 소수점 숫자를 반환한다. 이는 일관된 반환 유형을 보장하며 결과를 더 예측 가능하게 만든다. 그러나 0으로 나누는 것에 대해서는 주의해야 한다. 이런 경우 ZeroDivisionError
가 발생한다.
# 숫자 나눗셈
m = 8
n = 2
print(m / n)
# 결과: 4.0
# 0으로 나누기 시도 (오류 발생)
z = 0
print(m / z)
# ZeroDivisionError: 0으로 나눌 수 없다.
나머지 연산자는 %
로 표시되며 나눗셈 연산의 나머지를 반환한다. 이 연산자는 어떤 숫자가 짝수인지 홀수인지를 판별하는데 주로 사용된다. 모든 숫자에 2를 나눈 나머지는 짝수의 경우 0, 홀수의 경우 1이 된다. 이 연산자는 순환적 또는 반복적 프로세스가 필요한 많은 알고리즘 상황에서 또는 특정 범위 내에서 값이 순환하도록 보장해야 할 때 매우 유용한다.
# 숫자 나머지
u = 10
v = 3
print(u % v)
# 결과: 1
//
로 표현되는 몫 연산자는 한 숫자를 다른 숫자로 나누고, 그 결과를 가장 가까운 정수로 내림하여 반환한다. 즉, 소수점 이하를 버리고 몫만을 반환한다. 배열 인덱싱이나 특정 수학 알고리즘을 수행할 때 정수 결과가 필요할 때 특히 유용한다.
# 숫자 몫 연산
s = 10
t = 3
print(s // t)
# 결과: 3
**
로 나타나는 거듭제곱 연산자는 한 숫자를 다른 숫자의 제곱으로 계산한다. 이 연산자는 파이썬에서 제곱 연산을 수행하는 방법이다. 양수 및 음수 지수를 모두 처리할 수 있다. 양수 지수의 경우, 기본 숫자가 지수에 지정된 횟수만큼 자기 자신과 곱해집니다. 음수 지수의 경우, 파이썬은 기본값의 역수를 지수의 절댓값으로 계산하여 역 제곱을 효과적으로 계산한다.
# 숫자 거듭제곱 연산
i = 2
j = 3
print(i ** j)
# 결과: 8
# 음수 지수
k = -2
print(i ** k)
# 결과: 0.25
divmod()
함수를 사용하면 된다. 예를 들면, divmod(10, 3)
은 (3, 1)
을 반환하는데, 여기서 3은 몫이고 1은 나머지이다.*
를 사용하는 데 차이점이 있나요? 'a' * 3
는 'aaa'
를 반환하고, [1, 2] * 3
은 [1, 2, 1, 2, 1, 2]
를 반환한다.math
모듈을 제공한다.[Python] 비트 연산자 다양한 예제를 통해 이해하기 |
---|
[Python] 관계 연산자 다양한 예제를 통해 이해하기 |
[Python] 'zsh: command not found: python' 오류 해결하기 |
[Python] 할당 연산자 다양한 예제를 통해 이해하기 |
[Python] 산술 연산자 다양한 예제를 통해 이해하기 |
CloneCoding
한 줄의 코드에서 시작되는 혁신!