yumyum

[Python] 연산자 본문

ICT기반 클라우드 네트워크 해킹 침해대응전문가/Python

[Python] 연산자

yumyum0603 2023. 10. 23. 16:57
# 산술연산자
# = : 대입 연산자, 등호가 아님 !!! a <= 3 :: a에 3값을 대입
# +(더하기), -(빼기), *(곱하기), /(나누기), //(몫), %(나머지 값), **(제곱)

a = 5 ; b = 3 ; c = 2
print(a+b, a-b, a*b, a/b, a//b, a%b, a**b)
# => 8 2 15 1.6666666666666667 1 2 125
print(a+b-c, a+b*c, a*b/c)
# => 6 11 7.5

s1, s2, s3 = "100", "100.12", "99999999"
# 숫자(정수, 실수)를 문자열로 저장하는 경우가 있음
print(int(s1)+1, float(s2)+1, int(s3)+1)
# =>101 101.12 100000000
# 꺼내 쓸 때 다시 정수, 실수로 형변환 해서 사용

a = 100
b = 123.45
print(str(a)+"1")
# => 1001
print(str(a)+"1", str(b)+"1")
# => 1001 123.451

a = "민"
a= ord(a)
a = a * 2 + 100
# ord(문자) 하나의 문자를 인자로 받고 해당 문자에 해당하는 유니코드 정수를 반환한다
print(chr(a))
# => 𗡜
# chr(정수) 하나의 정수를 인자로 받고 해당 정수에 해당하는 유니코드 문자를 반환한다
print(a)
# => 48124

# 대입 연산자
# += :  (a += 3) = (a = a + 3)  나 자신에게 3값을 더함
# -= :  (a -= 3) = (a = a - 3)  나 자신에게 3값을 뺌
# *= :  (a *= 3) = (a = a * 3)  나 자신에게 3값을 곱함
# /= :  (a /= 3) = (a = a / 3)  나 자신을 3값으로 나눔
# //, %, **



a = 10
a += 5 ; print(a) # => 15
a -= 5 ; print(a) # => 10
a *= 5 ; print(a) # => 50
a /= 5 ; print(a) # => 10.0
a //= 5 ; print(a) # => 2.0
a %= 5 ; print(a) # => 2.0
a **= 5 ; print(a) # => 32.0

# Quiz) 동전 교환 프로그램
# c500, c100, c50, c10, coin = 0,0,0,0,0
# coin + int(input("돈 주면 바꿔 줄게 : "))

# print("500원 짜리 x개")
# print("100원 짜리 x개")
# print("50원 짜리 x개")
# print("10원 짜리 x개")

coin = int(input("돈 주면 바꿔 줄게"))
c500 = coin // 500
coin %= 500
c100 = coin // 100
coin %= 100
c50 = coin //50
coin %= 50
c10 = coin // 10
coin %= 10
print("500원짜리 ==> %d개"%c500)
print("100원짜리 ==> %d개"%c100)
print("50원짜리 ==> %d개"%c500)
print("10원짜리 ==> %d개"%c10)
print("바꾸지 못한 돈 ==> %d개"%coin)

## 관계연산자
# ==(두 값이 같다), !=(두 값이 다르다)
# >(크다), <(작다), >=(크거나 같다), <=(작거나 같다)
a = 100 ; b =200
print(a==b, a!=b, a>b, a<b, a>=b, a<=b)
# => False True False True False True

## 논리 연산자
# and(둘 다 만족), or(둘 중 하나 만족), not(무조건 반대)
a = 99
print((a>100) and (a<200))
# => False
print((a>100) or (a<200))
# => True
print(not(a==100))
# => True

## 비트 연산자
# & : 비트 곱
# | : 비트 합
# ^ : 배타적 논리 합(XOR)
# << : 왼쪽으로 쉬프트
# >> : 오른쪽으로 쉬프트

print(12&4)
# => 4
print(1|1)
# => 1
print(1^1)
# => 0

a=10 
print(a >> 1)
# => 5
print(a >> 2)
# => 2