부스트코스 무료 강의 - 처음 배우는 프로그래밍 (w.python), 카이스트 김문주 교수님
처음 배우는 프로그래밍 (w.파이썬)
부스트코스 무료 강의
www.boostcourse.org
1-1. 강의 소개
· 프로그램이란?
순차적인 명령
· 디버깅이란?
버그를 찾고 고치는 것
→ 프로그램 오류
1) syntax error : 발견하기 쉽고, 고치기도 쉽다.
문법이 틀린 것 (파이썬이 작성한 프로그램을 이해하지 못함)
2) runtime error : 프로그램 실행 중 에러 뜨면서 급종료되는 것
고치기 좀 어려움. 코드를 한 줄 한 줄 살펴봐야 함.
3) semantic error : 에러 메시지 없이 실행되지만, 기대하지 않은 결과가 나오는 것
대부분 시간을 쓰게 됨.
프로그래밍은 다양한 분야의 유용한 도구. 일종의 창작 활동. 오픈소스 커뮤니티가 있음.
1-2. Python 프로그램 작성 예제
· 함수는 여러 개의 프로그램 명령어들을 모아 놓은 것
(예시 1)
def print_message(): → print_message()라는 함수를 정의하겠다는 뜻
print("CS101 is fantastic!") ※콜론, 들여 쓰기※
print("Programming is fun!")
def repeat_message(): → 함수 안에서 다른 함수를 호출할 수 있음
print_message()
print_message()
repeat_message() → 총 네 줄의 메시지가 출력됨

명령은 위에서 아래로 하나씩 실행됨
함수를 정의하고 호출.
(예시 2) 로봇
# create a robot with one beeper
hubo = Robot(beepers = 1)
→ 비퍼를 하나 가진 로봇이 만들어지고, 그 로봇의 이름을 앞으로 휴보라고 쓰겠다는 뜻.
# move one step forward
hubo.move()
# turn left 90 degrees
hubo.turn_left()
⇒ 그럼 우회전은? 좌회전 명령어를 이용해 새로운 함수를 만들어서 사용.
def turn_right():
hubo.turn_left()
hubo.turn_left()
hubo.turn_left()

(예시 3) 신문 배달

Q. 휴보가 계단을 올라가서 문 앞에 신문을 놓고, 처음 위치로 돌아가게 하려면?
1) 계단을 네 칸 올라감
def climb_up_four_stairs():
climb_up_one_stair()
climb_up_one_stair()
climb_up_one_stair()
climb_up_one_stair()
def climb_up_one_stair():
hubo.turn_left()
hubo.move()
turn_right()
hubo.move()
hubo.move()
→ 이와 같이 하나의 큰 문제를 점점 작은 크기의 문제들로 나누어 해결하는 방식을 하향식 설계(Top-down)라고 함.
2) 신문을 놓음
hubo.drop_beeper()
3) 돌아섬
def turn_around():
hubo.turn_left()
hubo.turn_left()
4) 계단을 네 칸 내려감
climb_down_four_stairs()
(예시 4) for 반복문
for i in range(4):
print("cs101 is fantastic!") → print 명령어가 4번 수행
⇒ 이를 이용하여 앞서 작성한 코드를 더 깔끔하게 쓸 수 있음.
def climb_up_four_stairs():
for i in range(4):
climb_up_one_stair()
<키워드 정리>
def 정의
print 그대로 출력
콜론과 괄호, 특히 들여쓰기 주의할 것.
for i in range() 동일한 명령 반복
☞ pc 화면에 최적화된 개인 복습용 기록입니다.
'Python' 카테고리의 다른 글
(아카이브 22.01.08) 코딩 무료 강의 (기본편) - 6시간 뒤면 나도 개발자 리뷰 ① (2) | 2022.12.17 |
---|---|
(아카이브 22.01.05) 부스트코스 - 처음 배우는 프로그래밍 2강 리뷰 (2) | 2022.12.17 |
댓글