Posis

[Python] 산술연산자와 형변환(int, flaot, str, bool) 본문

Python

[Python] 산술연산자와 형변환(int, flaot, str, bool)

CooNiHong 2022. 11. 21. 01:46

산술 연산자

산술 연산자는 말 그대로 값을 계산하는 연산자입니다.

a = 10, b = 20, c = 3

Operator Description Example
+ 더하기 a + b - 30
- 빼기 a - b = 10
* 곱하기 a * b = 200
/ 나누기 b / a = 2.0
% 나머지 b % a = 0
** 제곱 a ** c = 1000
// a // c = 3
a = 10
b = 20
c = 3
print("a + b = ", a+b)
print("a - b = ", a-b)
print("a * b = ", a*b)
print("b / a = ", b/a)
print("b % a = ", b%a)
print("a ** c = ", a**c)
print("a // c = ", a//c)

여기서 보셔야 할 점은 나누기를 하면 실수형으로 변한다는 사실입니다.

산술연산자 우선순위

  1. **
  2. +(양수), -(음수)
  3. *, /, %, //
  4. +(덧셈), -(뺄샘)

2번과 4번은 다른의미입니다.

int()

int(a) a로 들어온 인자 값을 정수 타입으로 반환해줍니다.

int(float)는 소수점을 자르고 정수형으로 반환해 줍니다.

int(bool)는 True, False도 정수형으로 출력해줍니다.

int(string)는 숫자로된 문자열(int("3"))은 타입변환이 가능하지만 영어나 한글로 된 문자열(int("a"))은 타입변환이 불가능합니다.

# 실수형
print(int(1.9))
# bool
print(int(True))
print(int(False))
# 문자열
print(int("3"))
print(int("ABC"))

출력 결과물을 보시면 "ABC"에서 오류가 나오는 것을 확인할 수 있습니다.

float()

float() 방금 위에서 보신 int()와 매우 흡사합니다.

# bool
print(float(True))
print(float(False))
# 문자형
print(float("19"))
print(float("19a"))

str()

str()은 정수형, 실수형, bool 가리지않고 모두 문자형으로 바꿔줍니다.

# bool
print(str(True))
print(str(False))
print(type(str(False)))

bool()

bool()은 어떤것이 들어오냐에 따라 True와 False로 달라지게 됩니다. 한번 알아보겠습니다.

숫자형은 0, 문자열을 빈문자열을 Flase로 출력합니다. 반대로 0이 아닌 숫자 글자가 있는 문자열은 Ture를 반환하게 됩니다.

# True
print(bool(1))
print(bool(1.0))
print(bool("abc"))
# False
print(bool(0))
print(bool(0.0))
print(bool(""))

 

728x90