본문 바로가기

Programming/#Python

[Python] 파이썬으로 배우는 프로그래밍

(출처) edwith 파이썬으로 배우는 프로그래밍 기초, 김문주 교수 

 


Python 프로그램 작성 예제 
  1. 기초적인 형태와 동작에 대해 이해하기

  2. Top-Down형식의 코드 작성

  3. 반복문, 키워드, 들여쓰기 활용

 

함수
: 여러 개의 프로그램 명령어들을 모아 놓은 것 
  • 새로운 이름의 함수를 지정해주고 이를 호출될 때 실행됨

  • 키워드 def 함수 이름() : 으로 정의됨

  • 책을 읽는 것과 같은 메서드로 좌에서 우, 위에서 아래의 순서로 읽음 

 

함수의 정의, 함수의 호출
  • PyCharm에서 함수의 정의는 파란색, 함수의 호출은 검정색으로 표현됨 

  • 함수의 정의가 설계도를 만드는 과정이라면 함수의 호출은 설계도를 기반으로 건물을 짓는 것

  • 함수 호출은 () 안에서 이루어짐

from cs1robots import *

create_world() 
hubo = Robot(beepers = 1) 
hubo.move() 
hubo.move() 

hubo.turn_left() 
huno.move() 

def turn_right(): 
	hubo.turn_left() 
	hubo.turn_left() 
	hubo.turn_left() 

turn_right() 
hubo.move()  
hubo.move()  

hubo.turn_left() 
huno.move() 

def turn_right():
	hubo.turn_left()
    hubo.turn_left() 
    hubo.turn_left()

turn_right()
hubo.move() 

 


예제) 휴보의 신문배달
: 문제의 개요 → 계단 4칸 올라가기   신문 놓기   돌아서기(180도)   계단 4칸 내려가기 

 

def turn_right(): 
	hubo.turn_left() 
	hubo.turn_left() 
	hubo.turn_left() 

turn_right() 
hubo.move() 
def turn_around(): 
	hubo.turn_left() 
	hubo.turn_left() 
 
def climb_up_four_stairs(): 
	climb_up_one_stairs() 
	climb_up_one_stairs() 
	climb_up_one_stairs() 
	climb_up_one_stairs() 

def climb_up_one_stair(): 
	hubo.turn_left() 
	hubo.move() 
	turn_right() 
	hubo.move() 
	hubo.move() 


 

프로그래밍 가이드 
  1. 복잡한 문제미듐 사이즈의 여러 문제로 나누고, 이를 하나씩 해결

  2. 미듐 문제 해결을 위해 더 작은 크기의 소문제들로 세분화

  3. 이 문제들을 즉각적으로 해결 

Top-Down 설계

 


for 반복문


▤ 위의 예제에서 동일한 명령을 for i in range(4): 으로 간단하게 반복 가능

def climb_up_four_stairs(): 
	for i in range(4): 
		climb_up_one_stair() 


반복문 에서 들여쓰기에 의해 반복의 여부가 결정되므로 유의해야 함

 


 

정리하기
  1. 파이썬 프로그램의 형태 및 동작

  2. 파이썬 프로그램을 구성하는 키워드 → 콜론, 괄호 들여쓰기의 사용

  3. Hubo를 사용한 Top-Down 방식의 프로그램 작성 

 

학습 목표
  1. 조건에 따라 동작을 수행하는 if 조건문 이해

  2. 반복적으로 동작을 수행하는 while 반복문 이해

 


 

if 조건문
: 같은 명령만 수행하는 것이 아닌 조건에 따라 다른 명령을 호출함

 

if it rains: 
	listen_to_cs101_lecture() 
else: 
	eat_strawberries_in_the_sun() 
  • if 다음에 나오는 조건은 항상 참 or 거짓 값을 가짐
  • if True → 참, 거짓의 영어 타이핑은 항상 대문자로 작성

 


 

print("CS101 is my favorite course")

if False: 
	print("Every CS101 student will receive an A+") 

→ 이 조건의 결과값이 True 라면 if False 이후의 호출값은 출력되지 않음

 


 

True/ False에 대한 조금 더 복잡한 조건 
if 3 < 5 :
	print("3 is less than 5") 
else:
	print("3 is larger than 5") 


→ 조건 값이 참이므로 else문은 출력하지 않음

 


 

not

True값을 False값으로 바꿔주고 False값을 True값으로 바꿔주는 not


 

I'm a Senior Student in Data Science ! 

데이터 사이언스를 공부하고 있는 4학년 학부생의 TIL 블로그입니다. 게시글이 도움 되셨다면 구독과 좋아요 :)