본문 바로가기

Python 파이썬

자료형 변환, 연산자, 산술 연산자

728x90

자료형 변환과 연산자에 대해 알아보자.

#! 자료형 변환 ##
자료형(Data Type)은 다음과 같이 type을 이용하여 확인 가능
type(x) -> x 의 자료형을 반환
int(x) -> x값 을 정수형태로 변환하여 반환("123" -> 123)
float(x) -> x값 을 실수형태로 변환하여 반환("123.3" -> 123.3)
str(x) -> x값 을 문자열 형태로 변환하여 반환(123.4 -> "123.4")

#!연산자 ##
데이터를 가공하기 위한 기호 집합
산술 연산자(일반적인 사칙연산 기능) = +, -, *, /, //, %, **
비교 연산자(값을 비교하여 참, 거짓 판별기능) = ==, !=, is not, >, <, >=, <=
논리 연산자(, 거짓을 이용하여 논리연산) = and, or, not
비트 연산자(데이터를 비트단위로 계산기능) = &, |, ^, ~, >>, <<

 

색깔 별로 구분을 해놓았다. 저번 문자열시간에서 보았듯이 문자열을 곱하면 문자열이 반복되서 출력되기 때문에

형변환을 통해 str 을 int 나 float형으로 바꿔줘야 산술을 할 수 있다!

산술, 논리, 비교 연산자들이 많이 사용 되는 것 같다!

 

산술 연산자에 대해 알아보자.

다음을 실행하여 산술연산의 개념을 이해하자.
num1 = 2
num2 = 4
print(f"{num1}+  {num2} = {num1 + num2}")       # 더하기
print(f"{num1}{num2} = {num1 - num2}")       # 빼기
print(f"{num1}{num2} = {num1 * num2}")       # 곱하기
print(f"{num1} /   {num2} = {num1 / num2}")       # 나누기
print(f"{num1} //  {num2} = {num1 // num2}")      # 나눠 몫 구하기
print(f"{num1} % {num2} = {num1 % num2}")     # 나눠 나머지 구하기
print(f"{num1} ** {num2} = {num1 ** num2}")      # 제곱

 

num1 = 2 , num2 = 4 로 값을 정해놓고 예제를 만들었다.

실행해서 결과를 보자.

 

출력결과 ↓
2 + 4 = 6
2 - 4 = -2
2 * 4 = 8
2 / 4 = 0.5
2 % 4 = 2
2 ** 4 = 16

 

계산은 컴퓨터가 하는 것, 나는 그것을 지시하는 방법을 배우는 중이다!

 

num1 과 num2를 입력받아서 자료형 변환을 응용해 보자!

표준입력을 이용한 산술
num1 = input("수 입력 : ") # 10
num2 = input("수 입력 : ") # 5
ret = num1 + num2
print(f"합은 : {ret}") #실행결과 -> 합은 : 105
#input은 기본적으로 문자열로 반환하기 때문에 형 변환을 해줘야한다.

형 변환을 이해해 보자. #_1
# 수를 입력 받을때 부터 int(정수)형으로 받는다.
num1 = int(input("수 입력 : ")) # 10
num2 = int(input("수 입력 : ")) # 5
ret = num1 + num2
print(f"합은 : {ret}") #실행결과 -> 합은 : 15

형 변환을 이해해 보자. #_2
# 입력은 문자열로 받았지만 ret을 int(정수)형으로 형 변환
num1 = (input("수 입력 : ")) # 10
num2 = (input("수 입력 : ")) # 5
ret = int(num1) + int(num2)
print(f"합은 : {ret}") #실행결과 -> 합은 : 15

 

ret이란 변수에 값을 넣는다.(값을 참조한다)  무엇을? num1 + num2 의 값을!

728x90

'Python 파이썬' 카테고리의 다른 글

논리 연산자  (0) 2023.10.12
대입 연산자  (0) 2023.10.12
표준 입출력  (0) 2023.10.12
Format  (1) 2023.10.12
Indexing & Slicing  (1) 2023.10.12