1주 : day3

daye·2023년 3월 6일

달성한 목표

강의 : ~기초6

정리할 파트

강의 : 기초 5~6 요약

17. 산술 연산자 (곱셈, 나눗셈)

곱셈 연산자

  • 숫자(정수, 실수)끼리
  • 문자(열)와 숫자

나눗셈 연산자

  • 숫자(정수, 실수)끼리
  • 0으로 나눌 수 없다
  • 나눗셈의 결과는 항상 float이다

18. 산술 연산자 (나머지, 몫)

나머지 구하기

result = num1 % num2

몫 구하기

result = num1 // num2

divmod() 함수

  • 나머지와 몫을 한번에 구하는 함수
num1 = 10
num2 = 3
result = divmod(num1, num2)
print('result: {}'.format(result))		# result: (3, 1)

19. 산술 연산자 (거듭제곱)

거듭제곱 연산자

num1 = 2
num2 = 3
result = num1 ** num2		# result: 8

제곱근

n의 m제곱근 공식

n ** (1/m)

ex/ 루트 4 는 2 일 때, n=4, m=2

  • 2의 제곱근, 3제곱근, 4제곱근
result = 2 ** (1/2)
result = 2 ** (1/3)
result = 2 ** (1/4)

math 모듈의 sqrt()와 pow() 함수

sqrt() : 제곱근 구하기

import math
print('2의 제곱근 %f' % math.sqrt(2))	# 2의 제곱근 1.414214

pow() : 거듭제곱 구하기

print('2의 3제곱 %f' % math.pow(2, 3))	# 2의 3제곱 8.00000

20. 복합 연산자

  • 할당(대입) 연산자
num1 = 10		# 오르쪽 값을 왼쪽에 할당(대입)

복합 연산자

+= : 덧셈연산후할당 num1 = num1 + 5 : num1 += 5
-= : 뺄셈연산후할당
*= : 곱셈연산후할당
/= : 나눗셈연산후할당
%= : 나머지 연산 후 할당
//= : 몫연산후할당
**= : 거듭제곱 연산 후 할당

21. 비교 연산자 (숫자 비교)

num1 = 10; num2 = 5
# ; : 두 줄에 걸치지 않고 한 줄에 구분하여 모두 적고 싶을 때
num1 > num2 : True
num1 <= num2 : False
num1 != num2 : True			# 연산 결과는 bool이다.

22. 비교 연산자 (문자 비교)

아스키 코드를 이용

  • 글자마다 부여된 숫자가 있음. (외울 필요 X, 검색 사용 o)
  • 소문자와 대문자의 아스키 값이 다름
cha1 = 'A'		# 65
cha2 = 'S'		# 85
print('\'{}\' > \'{}\' : {}'.format(cha1, cha2, (cha1 > cha2)))
# 'A' > 'S' : False
print('\'A\' -> {}'.format(ord('A')))		#	'A' -> 65
print('83 -> {}'.format(chr(83)))			#	83 -> S
# \' : \가 오르쪽 작은 따옴표의 기능을 상실시킴
  • 문자열 자체 비교
str1 = 'Hello'
str2 = 'hello'
print('{} != {} : {}'.format(str1, str2, (str1 != str2)))
# Hello != hello : True

23. 논리 연산자

  • 피연산자의 논리(True, False)를 이용한 연산
  • 종류 : and, or, not

and 연산

A and B : A와 B 모두 True인 경우만 결과값으로 True이다.

or 연산

A or B : A와 B중 어느하나만 True이면 결과 값은 True이다.

not 연산

not A : A의 상태를 부정하는 결과를 나타낸다.

24. operator 모듈

  • 모듈 : 누군가 만들어놓은 훌륭한 기능
    수학 연산 관련 모듈, 난수 관련 모듈, 연산자 관련 모듈 ...

operator 모듈

  • 산술 연산자 관련 함수
import operator
num1 = 8
num2 = 3
print('{} % {} : {}'.format(num1, num2, operator.mod(num1, num2)))
  • 비교 연산자 관련 함수
print('{} >= {} : {}'.format(num1, num2, operator.ge(num1, num2)))
  • 논리 연산자 관련 함수
flag1 = True
flag2 = False
print('{} or {} : {}'.format(flag1, flag2, operator.or_(flag1, flag2)))

random 모듈

10부터 100사이의 난수 (무작위 추출한 수)

import random
rInt = random.randint(10, 100)

0개의 댓글