[연산자] Shift 및 조건문 한줄로 나타내기

2022. 10. 18. 13:34파이썬

파이썬에는 다양한 연산자가 존재한다. 

일항, 이항, 삼항 연산자들이 있는데, 그 중 헷갈리는 연산자를 모아서 정리해본다.

- Shift 연산

<<: 왼쪽으로 지정된 비트 수만큼 밀고 공백을 0으로 채운다 -> 2를 곱한 것

a = 3 # 0011(2)

>>> print(a<<1) # a의 값을 비트열로 변환하여 왼쪽으로 한칸 민다 -> 0110(2)
6
# 공백을 0으로 채운다.

>>: 오른쪽으로 지정된 비트 수만큼 밀고 공백을 0으로 채운다 -> 2를 나눈 것

a = 6 # 0110

>>> print(a >> 1) # 0011
3

 

※ 음수 주의 (MSB)

- 한줄로 나타내기

a = ?

k = "delicious" if a == "ginger" else "awful"


# 한줄로 나타내지 않으면
a = ?

if a == "ginger":
	k = "delicioius"
else:
	k = "awful"

# for문도 가능한데 아직 for문 글을 안적어서 생략했다.

가독성 & 공부를 위해 full로 쓰자.

하지만 좀 멋져보이고 싶을 때 한줄로 딱 쓰면 좀 멋있다.