오식랜드
[python] 숫자처리함수와 모듈 본문
반응형
숫자 처리 함수
파이썬에서 기본으로 제공되는 함수
- abs : 절대값
- pow : 제곱
- max : 가장 큰 값
- min : 가장 작은 값
- round : 반올림
print(abs(-5)) # -5 의 절대값 = 5
print(pow(4, 2)) # 4의 2제곱 = 4 * 4 = 16
print(max(5, 12)) # 5 와 12 중 큰 값 = 12
print(min(5, 12)) # 5 와 12 중 작은 값 = 5
print(round(3.14)) # 3.14 의 반올림 = 3
print(round(4.99)) # 4.99 의 반올림 = 5
math 모듈을 이용한 숫자 처리 함수
- floor : 내림
- ceil : 올림
- sqrt : 제곱근
# 모듈 호출
from math import * # *? math 모듈 내의 모든 내용을 가져다 쓰겠다는 의미
print(floor(4.99)) # 4.99 의 내림 = 4
print(ceil(3.14)) # 3.14 의 올림 = 4
print(sqrt(16)) # 16 의 제곱근 = 4
모듈 Module
위에서 math모듈을 불러온 것 처럼 *을 통해 호출 가능
from math import *
또 다른 방법으로는 이름만 적는 방법도 있다
import 모듈이름
단, 이 때는 모듈이 필요할 때, 모듈이름과 점(.) 을 반드시 함께 적어주셔야 합니다.
import math # math 모듈을 가져다 쓰겠다는 의미
print(math.floor(4.99)) # math. 과 함께 사용
print(math.ceil(3.14))
print(math.sqrt(16))
랜덤함수 Random
파이썬에는 무작위로 어떤 수를 뽑아주는 random 모듈이 있습니다.
from random import * # random 모듈에서 모든 것들을 가져다 쓰겠다는 의미
print(random()) # 0.0 이상 1.0 미만의 임의의 값 생성
print(random() * 10) # 0.0 이상 10.0 미만의 임의의 값 생성
# 정수값 생성
print(int(random() * 10)) # 0 이상 10 미만의 임의의 정수 값 생성
print(int(random() * 10) + 1) # 1 이상 10 이하 (11 미만) 의 임의의 정수 값 생성
로또 번호 뽑기
1 부터 45 까지의 범위를 가지는 로또 번호를 뽑으려면 이렇게 할 수 있겠죠.
print(int(random() * 45) + 1) # 1 이상 46 미만의 임의의 정수 값 생성
그런데 이렇게 보면 뭔가 복잡합니다.
파이썬에서는 좀 더 편하게 랜덤 수를 뽑는 함수들을 제공해줍니다.
- randrange(n1, n2) : n1이상, n2미만의 범위 내의 임의의 정수값 생성
- randint (n1, n2) : n1이상, n2이하의 범위 내의 임의의 정수값 생성 (마지막값 포함)
그래서 로또 번호 추첨기를 이렇게 만들 수 있습니다.
추가적으로 주로 사용하는 함수를 알아보자
- shuffle : 리스트 내에서 순서를 섞음
num_list = randrange(1, 46)
shuffle(num_list)
- sample : 겹치지 않게 갯수대로 도출해줌
num_list = randrange(1, 46)
shuffle(num_list)
get_number = sample(num_list, 7)
반응형
'dev-log > python' 카테고리의 다른 글
[python] 집합 set (0) | 2023.01.04 |
---|---|
[python] 사전 Dictionary (0) | 2023.01.04 |
[python] 리스트 List (0) | 2023.01.04 |
[python] 문자열 (0) | 2022.12.14 |
[python] 파이썬 기초지식 (0) | 2022.12.14 |
Comments