[python] 데이터 타입 (1) 수 자료형

김재현·2023년 2월 22일
0

Python Grammar

목록 보기
2/12

1. 수 자료형

1.1 정수(Integer)

소숫점이 없는 숫자로 양의 정수, 음의 정수, 0이 있습니다.


1.2 실수(Real Number)

소숫점 아래의 데이터를 포함한 수 자료형으로 정수부나 소수부가 0인 데이터는 0을 생략할 수 있습니다.

1.2.1 부동 소수점(Floating-point)

컴퓨터 시스템은 실수를 처리하기 위해 부동 소수점 방식을 사용합니다. 이때 부동 소수점을 처리하는 표준인 IEEE754는 실수를 저장하기 위해 고정된 크기(4바이트 or 8바이트)에 메모리를 할당합니다.

때문에 파이썬에서 실수가 컴퓨터로 저장되는 과정에 잘림(truncation) 오차가 발생합니다. 실수 변환이나 실수를 사용하는 계산은 모두 근사값으로 계산되는 것이라고 할 수 있습니다.

1.2.2 지수 표현 방식

실수형 데이터를 표현하는 방식으로는 지수 표현방식이 있습니다. 지수 표현 방식은 e나 E 뒤에 붙은 숫자로 10의 지수를 나타냅니다.


2. 수 자료형의 연산

2.1 숫자 연산자

연산자기호
사칙 연산자+, -, *, /
정수 나누기 연산자//
나머지 연산자%
제곱 연산자**

나누기 연산자(/)는 나눠진 결과를 실수형으로 반환합니다.


2.2 복합 대입 연산자

연산자설명
+=숫자 덧셈 후 대입
-=숫자 뺄셈 후 대입
*=숫자 곱셈 후 대입
/+숫자 나눗셈 후 대입
%=숫자의 나머지를 구한 후 대입
**=숫자 제곱 후 대입

3. 형 변환

  • int() 함수 : int 자료형으로 변환합니다.
  • float() 함수 : float 자료형으로 변환합니다.

4. 수 관련 함수

  • divmode함수
# 튜플의 형태로 몫과 나머지를 저장합니다.
result = divmod(10, 3)

print('result: {}'.format(result))
print('몫: {}'.format(result[0]))
print('나머지: {}'.format(result[1])

result: (3, 1)
몫 : 3
나머지 : 1

  • abs함수
print(abs(-1))
print(abs(1))

1
1

  • 거듭제곱, 제곱근 구하기
# n의 m제곱 : n**m
result1 = 2**4
print('2의 4제곱근 %.f' % result1)

# n의 m제곱근: n**(1/m)
result2 = 4 ** (1/2)
print('4의 2제곱근 %.2f' % result)

# math 모듈 활용 : pow()-거듭제곱, sqrt()-2제곱근
import math
print('2의 4제곱 %.2f' % math.pow(2,4))
print('4의 2제곱근 %.2f' % math.sqrt(4))

2의 4제곱 16
4의 2제곱근 1.19
2의 4제곱 16.00
4의 2제곱근 2.00


5. format() 함수

5.1 진수변환

dNum = int(input('정수를 입력해주세요: '))
print('2진수 :{}'.format(format(dNum, '#b')))
print('8진수 :{}'.format(format(dNum, '#o')))
print('16진수 :{}'.format(format(dNum, '#x')))

5.2 반올림

  • format(수, ".nf") 를 사용하면 원하는 자리까지의 정확도로 반올림 된 실수 값을 만들어줍니다.
a=float(input())
print(format(a,".2f"))
  • 연산을 활용하는 것도 가능합니다.
f1, f2 = input().split()

f1 = float(f1)
f2 = float(f2)

print(format(f1/f2, ".3f"))

5.3 세 자리수 구분

money = 10000
strMoney = format(money ,',')
print(strMoney)

10,000


4. 참고 자료

0개의 댓글