A는a에 대응한다
가 여러 개 등장하면 dict
형태로 정리할 수 있습니다.8진법에 기반한다. 예를 들면 다음과 같다
의 설명은 다음의 규칙을 보여주고 있습니다.for문
으로 지수의 값을 1씩 줄여가면서 구현할 수 있습니다. dct = { # 딕셔너리 자료형에 대응값을 넣습니다
'-':0,
'\\':1,
'(':2,
'@':3,
'?':4,
'>':5,
'&':6,
'%':7,
'/':-1
}
while True: #입력을 무한히 반복합니다
a = input() #입력값 변수를 받습니다
if a == '#': #'#'문자를 만나면
break #입력이 종료됩니다
n = len(a)-1 #8진법의 지수는 왼쪽에서 오른쪽으로 가는 경우 (문자의 길이-1)->0까지 지속됩니다
sum_ = 0 #8진법의 모든 자리수 값을 더한 값이 담기게 됩니다
for i in a: #반복문을 실행합니다
sum_+=dct[i]*(8**n) #i번째 자리수를 8진법으로 변환합니다. +=으로 표시해 기존의 값에 계속해서 더해져 담깁니다
n-=1 #n = n-1과 동일한 표현입니다. 지수를 1씩 빼줍니다
print(sum_)
\
는 특별한 기능을 가진 특수문자를 일반적인 문자로 변환시켜 주는 역할
을 담당합니다.\
와 ₩
는 동일한 의미입니다.문자열 표시
의미를 가지는 '
를 의미가 없는 문자열 '
로 표현하기 위해서는 \'
로 표현해야 합니다.a = 'it's show time'
-> 에러a = 'it\'s show time'
-> 정상 작동\
를 표현하기 위해서는 \\
로 작성해야 합니다.\\
는 \특수한 의미를 지닌 문자
에서 특수한 의미를 지닌 문자 = \
가 되었다고 생각하시면 됩니다.input()은 EOFError를 발생시킵니다.
sys.stdin.readline()은 빈 문자열을 반환합니다.
# input()으로 입력을 받을 경우
while True:
try:
a = input()
except EOFError:
break
# sys.stdin.readline()으로 입력을 받을 경우
import sys
while True:
a = sys.stdin.readline()
if not a:
break
a+=b
은 a = a+b
와 동일합니다.\$수식\$
을 통해 수식을 표현할 수 있습니다.