벌써 세 번째 파이썬 시간. 이번 주에는 앞부분은 순한맛, 뒷부분은 매운맛이다. 앞부분은 JS 때 배웠던 개념들과 거의 동일해서 쉽다고 느꼈는데 하노이의 탑(콜백함수) 앞에 무릎 꿇고 말았다.
컴퓨터는 알파벳을 숫자로 인식한다. 이 때 사용하는 것이 바로 아스키 코드다.
그러니까 유저가 A라고 입력하면 사실 컴퓨터가 받아들이는 것은 A가 아니라 65이다. 그런데 이러면 의문점이 생길 수 있다.
"컴퓨터는 진짜 숫자 65와 알파벳 A를 나타내는 65를 어떻게 구별할까?"
그 답이 바로 자료형이다. 숫자 65인지 알파벳 65인지 자료형으로 파악할 수 있다.
가장 기억해야하는 것은 int다. (물론 다 기억해야하지만 int가 가장 중요함)
파이썬에 직접 적어보면 타입을 알 수 있다!
답: 이 함수의 문제점은 종료지점을 설정하지 않았다는 것이다. 이 경우 countdown의 인자가 0보다 작은 수일 경우 계~~~속 내려가는 스택오버플로우 현상이 일어난다. 따라서 다음과 같은 조건을 추가해줘야 한다.
def countdown(n):
if n == 0:
print("Happy New Year!")
elif n < 0:
print("NOOOOOOO")
else:
print(n)
countdown(n-1)
countdown()