나를 찾아가는 길

[Python]자료구조: 연산자 본문

Python/공부-ing

[Python]자료구조: 연산자

ari950505 2021. 12. 12. 18:25

 

연산자 종류:

산술 연산자

할당 연산자: =, +=, -=, /=, %=, //=

비교 연산자

논리 연산자: and, or, not

 

result = data1 + data2

피연산자

 

문자열을 이용한 덧셈은 가능, 뺄셈은 불가능.

str1 = ‘Good’

str2 = ‘ ’

str3 = ‘afternoon’

 

result = str1 + str2 +str3

print(‘result : {}’.format(result))

 

 

나눗셈 연산자

num1 = 10

num2 = 3

 

result = num1 / num2

print('result : {}'.format(result))

print('result : %.2f' % result)

 

0을 나눗셈 하는 경우

결과는 항상 0

 

0으로 나누는 경우

0으로 어느 것도 나눌 수 없다. error-> ZeroDivisionError

 

나눗셈 결과는 항상 float형이다.

 

나머지와 몫을 동시에 구하기

divmod()

result = divmod(num1,num2)

print(‘result : {}’.format(result))

print(‘’)

 

 

n의 m제곱근 공식

n ** (1/m)

result = 2 ** (1/2)

print('result : {}'.format(result))

print('result : %.2f' % result)

 

제곱근 함수 sqrt()

import math

math.sqrt(3) => 8

 

거듭제곱 함수 pow()

math.pow(2,4) => 16

 

비교 연산자

- 문자 비교 : 아스키 코드(문자를 숫자로 표현)를 이용한 비교연산

 

모듈이란operator

누군가 이미 만들어 놓은 훌륭한 기능(공짜로 사용가능)

- 수학 연산 관련 모듈, 난수 관련 모듈, 연산자 관련 모듈 등등

 

산술 연산 관련 함수

print('{} + {} : {}'.format(num1,num2,operator.add(num1,num2)))

print('{} - {} : {}'.format(num1,num2,operator.sub(num1,num2)))

print('{} * {} : {}'.format(num1,num2,operator.mul(num1,num2)))

print('{} / {} : {}'.format(num1,num2,operator.truediv(num1,num2)))

print('{} % {} : {}'.format(num1,num2,operator.mod(num1,num2)))

print('{} // {} : {}'.format(num1,num2,operator.floordiv(num1,num2)))

print('{} ** {} : {}'.format(num1,num2,operator.pow(num1,num2)))

 

 

비교 연산자 관련 함수

print('{} == {} : {}'.format(num1,num2,operator.eq(num1,num2)))

print('{} != {} : {}'.format(num1,num2,operator.ne(num1,num2)))

print('{} / {} : {}'.format(num1,num2,operator.gt(num1,num2)))

print('{} % {} : {}'.format(num1,num2,operator.ge(num1,num2)))

print('{} < {} : {}'.format(num1,num2,operator.lt(num1,num2)))

print('{} <= {} : {}'.format(num1,num2,operator.le(num1,num2)))

 

#논리 연산자 관련 함수

flag1 = True
flag2 = False

print('{} and {} : {}'.format(flag1,flag2,operator.and_(flag1,flag2)))

print('{} or {} : {}'.format(flag1,flag2,operator.or_(flag1,flag2)))

print('{} not {} : {}'.format(flag1,flag2,operator.not_(flag1)))

 

조건식:

 

어떤 조건에 따라 실행이 분기 되는 식.

- A if 조건식 else B -> 조건식의 결과가 True이면 A실행, 그렇지 않으면 B 실행

print('시험 : PASS') if operator.ge(scoreAvg,allPassScore) else print('시험: FAIL')

 

조건문

- 특정 조건에 따라 프로그램을 분기한다.

print('총점 : %d, 평균 : %.2f' % (totalScore, scoreAvg))

 

조건식(삼항연산자)의 두 가지 사용법

 

- 조건식 결과에 따른 실행만 하는 경우

print('포인트 사용 가능') if userPoint >= minAblePoint else print('포인트 사용 불가능')

 

- 조건식 결과를 변수에 할당하는 경우

result = '가능' if userPoint >= minAblePoint else '불가능'

print('포인트 사용 가능 여부 : {}'.format(result))

 

- 모든 조건식은 if~else문으로 변경 가능. 반대로는 불가능.

 

- 조건식은 간단한 조건문 작성 시 사용가능, 복잡한 조건문 작성에는 적합하지 않음.

 

조건문

if-else문 : 여러 가지 조건식 결과에 따라 실행문이 결정됨.

 

파이썬에서 조건문을 사용할 시, 들여쓰기를 통해 조건식에 포함된 코드란 걸 인식.

 

Comments