파이썬 기초2

Variety_·2021년 9월 15일
0

Python

목록 보기
2/12

연산자


  • 연산자의 종류
    • 산술 연산자 : +,-,*,%,//,**
    • 할당 연산자 : =,+=,-=,//=
    • 비교 연산자 : >,>=,<,==,!=
    • 논리 연산자 : and, or, not

산술연산자

문자열 연산 : +, * 가능 !

나눗셈 결과는 항상 데이터 타입이 실수(float)이다. (20/4를 해도 4.0이 결과!), 0으로 나누면 ZeroDivisionError 발생!

나머지와 몫 연산자

  • % : 나머지연산자 // : 몫 연산자 / : 나누기 연산자

  • 🔨divmod() : 나머지와 몫을 한번에 구하는 함수

  • result = divmod(나눠지는수,나누는수) result==(몫,나머지)인 튜플형태로 저장됨

거듭제곱 연산자

  • ** : n승 해주는 연산자

  • 제곱근 구하기

    n의 m제곱근 : n**(1/m)

  • math 모듈의 sqrt()와 pow() 함수 : sqrt()는 2의 제곱근을 구하는 함수, pow()는 거듭제곱 함수

    ex) math.pow(n,m)==n**m

💡Tip : 파이썬에는 천단위마다 ,를 기록해주는 format() 함수가 있음 . format(숫자,',')로 사용가능
추가로 format(숫자,'변형할 진수')를 이용한 진수변환(16진수 : x, 8진수 : o) 등 다양한 형태 변환을 지원한다.

복합 연산자

산술연산자의 응용!

특정연산자= : 특정연산자 연산 후 할당
ex) += : 덧셈 연산 후 할당 , x+=1 처럼 사용 x=x+1 와 같음

비교 연산자

  • ==,!=,>,>=,<= 같이 비교를 하는 연산자, 연산의 결과는 항상 bool type이다.

💡Tip : 한 줄에 여러 실행을 여러실행을 하고 싶을 때 세미콜론(;)을 이용하면 된다. ex) num1=10; num2=5

  • 문자 비교의 경우 아스키코드의 십진수 값으로 비교를 한다. ord('chr')를 통해 아스키코드 값을 확인할 수 있다. 숫자의 역변환은 chr(숫자)로 가능하다.
  • 문자열의 비교는 문자열 자체의 비교만 가능하다, 즉 == or !=를 통해 같은지 다른지만 가능!

논리연산자

논리연산자: 피연산자의 논리(True,False)를 이용한 연산

논리 연산자의 종류 : and , or, not

and 연산 : A and B 모두 True인 경우만 True이다.

or 연산: A와 B 중 어느하나만 True이면 True이다.

not 연산 : A의 상태를 부정하는 결과를 리턴한다.

operator 모듈

모듈 : 누군가 이미 구현해놓은 다양한 기능들

operator 모듈(산술,비교,논리 연산자 관련 함수)

연산자operator 함수
+operator.add()
-operator.sub()
*operator.mul()
/operator.truediv()
%operator.mod()
//operator.floordiv()
**operator.pow()
andoperator.and_()
oroperator.or_()
notoperator.not_()
==operator.eq()
!=operator.ne()
>operator.gt()
>=operator.ge()
<operator.lt()
<=operator.le()

일반 연산자를 이용해서 연산할 수 있으나 모듈을 사용시 더 빠른속도로 연산이 가능하다.

#실습예제, 10~100까지 난수를 생성한 후 십의자리, 일의 자리 출력
import random
rnd=random.randint(10,100)
digit_10=operator.mod(rnd,10)
digit_1=operator.floordiv(rnd,10)

0개의 댓글