Python

Python(2) 파이썬 숫자

사회적가치누리 2024. 10. 31. 17:20
목차
3-1. 연산자
3-2. 간단한 수식
3-3. 숫자처리함수
3-4. 랜덤함수
3-5. 퀴즈#2

 

 

3-1. 연산자

 

파이썬에서 연산자를 사용할때는

 

먼저 산술연산자.

+(덧셈),-(뺄셈), *(곱셈),/(나눗셈),**(거듭제곱),//(몫),%(나머지) 가 있습니다.

 

print(1+1) # 2
print(3-2) # 1
print(5*2) # 10
print(6/3) # 2.0 파이썬에서는 / 연산자를 사용한 나눗셈의 결과는 항상 부동 소수점 수(float)로 반환합니다. 

print(2**3) # 8
print(5%3) # 2
print(5//3) # 1
print(10//3) # 3

 

 

비교연산자도 있습니다.

==(양쪽이 같냐)

<,>(미만,초과)

<=,>=(크거나 같냐,작거나 같냐) [이상,이하]

!=(양쪽이 다르냐) 

not(뒤에 있는 값의 반대) [1편에서도 했었습니다.]

and(앞과 뒤의 조건이 만족하냐) > and 대신 &로도 사용가능 합니다.

or(앞의조건이나 뒤의 조건중에 하나라도 만족하냐) > or 대신 | [백스페이스 밑에 달러모양]으로도 사용가능

 

print(10 > 3) # True
print(4 >= 7) # False
print(10 < 3) # False
print(5 <= 5) # True

print(3 == 3) # True
print(4 == 2) # False
print(3 + 4 == 7) # True
 
print(1 != 3) # True
print(not(1 != 3)) # False

print((3 > 0) and (3 < 5)) # True
print((3 > 0) & (3 < 5)) # True

print((3 > 0) or (3 > 5)) # True
print((3 > 0) | (3 > 5)) # True

print(5 > 4 > 3) # True
print(5 > 4 > 7) # False

 

 

3-2. 간단한 수식

 

앞에서 배웠던 연산자를 활용해 간단하게 수식을 만들 수 있습니다.

예를 들어 6 + 3 * 4 - 2 이것처럼요.

혹은, 변수를 지정해서도 사용 가능합니다.

 

변수 = 넣고싶은값

 

변수 += > 변수에 값을 더해줘라

변수 -= > 변수에서 값을 빼줘라

변수 *= > 변수에서 값을 곱해줘라

변수 /= > 변수에서 값을 나눠줘라

변수 %= > 변수에서 나머지를 구해줘라

print(2 + 3 * 4) # 14
print((2 + 3) * 4) # 20
number = 2 + 3 * 4 
print(number) # 14
number = number + 2 
print(number) # 16
number += 2
print(number) # 18
number *= 2
print(number) # 36
number /= 2 
print(number) # 18.0
number -= 2
print(number) # 16.0
number %= 5
print(number) # 1.0

 

3-3. 숫자처리함수

 

abs() > ()안의 절댓값

pow() > ()안의 값 두개의 승 예) pow(4,2)이면 4의 2승 즉, 4를 2번곱한거(4x4)

max() > ()안의 값중에 큰 것을 반환

min() > ()안의 값중에 작은 것을 반환

round() > ()안의 값 반올림

 

또 파이썬에서 제공하는 math 라이브러리를 사용하는 방법도 있습니다.

from math import * 를 써주셔야 사용 가능합니다. 이건 무슨 뜻이냐면,

math 모듈에 있는 모든 함수를 현재 스크립트에 가져온다. 라고 생각하시면 되겠습니다.

 

floor() > 내림

ceil() > 올림

sqrt() > 제곱근 [이 함수 역시 부동 소수점 수로 반환합니다.] 

 

print(abs(-5)) # 5
print(pow(4, 2)) # 4^2 = 16
print(max(5, 12)) # 12
print(min(5, 12)) # 5
print(round(3.14)) # 3
print(round(4.99)) # 5

from math import *
print(floor(4.99)) # 4
print(ceil(3.14)) # 4
print(sqrt(16)) # 4.0

 

3-4. 랜덤함수

 

랜덤 라이브러리를 사용하면 랜덤함수를 사용할 수 있습니다.

사용하려면 from random import * 을 코드 맨위에 써줘야합니다.

 

random() > 0.0부터 1.0미만의 임의의 값 예) 0.0014781212456... 

random()*10 > 0.0부터 10.0 미만의 임의의 값 예) 6.00414448...

만약 뒤에 소수점이 보기가 싫으면 int로 감싸주는 방법이 있습니다.

 

int(random() * 10) > 0 ~ 10의 임의의 값이 나옵니다.

이를 활용해서

int(random() * 45) + 1  > 로또값을 출력되게 할 수 있습니다. [+1을 넣은 이유는 0이 출력되면 안되기 때문입니다.]

로또는 1부터 45번까지의 숫자가 6번 나옵니다.

그러면 int(random() * 45) + 1  이 문장을 6번 사용하면 6개의 임의의이 나오겠죠?

또다른 방법으로는

 

randrange() > ()안 사이의 임의의 값 예) randrange(1, 46) > 1 ~ 46 미만의 임의의 값 생성

randint() > ()안 사이의 임의의 값 예) randint(1, 45) > 1 ~ 45 이하의 임의의 값 생성

 

from random import *

print(random())
print(random()*10)
print(int(random() * 10))
print(int(random() * 45 + 1))
print(randrange(1, 46))  
print(randint(1, 45))

3-5. 퀴즈#2

Quiz) 당신은 최근에 코딩 스터디 모임을 새로 만들었습니다.
월 4회 스터디를 하는데 3번은 온라인으로 하고 1번은 오프라인으로 하기로 했습니다.
아래 조건에 맞는 오프라인 모임 날짜를 정해주는 프로그램을 작성하시오.

조건1 : 랜덤으로 날짜를 뽑아야 함
조건2 : 월별 날짜는 다름을 감안하여 최소 일수인 28 이내로 정함
조건3 : 매월 1~3일은 스터디 준비를 해야 하므로 제외

출력문 예제 : 오프라인 스터디 모임 날짜는 매월 x 일로 선정되었습니다.

 

우선 랜덤으로 날짜를 뽑아야하니까 위에서 배운 랜덤 라이브러리를 사용해야겠군요.

from random import *

 

그리고 "월별 날짜는 다름을 감안하여 최소 일수인 28 이내로 정함"이라는 조건과

"매월 1~3일은 스터디 준비를 해야 하므로 제외" 이라고 했습니다.

이 뜻은, 4일과 28일 사이의 값을 랜덤으로 뽑아줘야 한다. 라는 뜻입니다.

 

그럼 한번 코드를 작성해볼까요?

위에서 배운 randint() 를 한번 사용해보죠.

day = randint(4, 28)

print("오프라인 스터디 모임 날짜는 매월 "+str(day)+" 일로 선정되었습니다.")

 

'Python' 카테고리의 다른 글

Python(6) 활용1  (0) 2024.11.04
Python(5) 기초 마무리  (0) 2024.11.03
Python(4) 반복문과 함수  (0) 2024.11.02
Python(3) 문자열 , 자료구조  (0) 2024.11.01
Python(1) 첫 시작.  (0) 2024.10.30