Index
Function
- 함수 선언
- parameter vs argument
- 함수 형태
Console I/O
- Input
- print formatting
Function
- 어떤 일을 수행하는 코드의 덩어리
- 반복적인 수행을 용이하게 함
- 코드를 논리적인 단위로 분리
- 캡슐화 : 인터페이스만 알면 타인의 코드 사용
- 함수 수행 순서
1) 함수 코드를 메모리에 올려 놓음
2) 메인 프로그램 수행 => a=1, b=2
3) 함수 호출 => func(a,b) => return 값 반환
- 함수 작성 시 규칙
- 함수와 함수 코드 사이에는 두 줄씩 띄어서 작성
1. 함수 선언
def 함수이름 (parameter,...,):
수행문 #1 statement
수행문 #2 statement
return 반환값
- parameter : 함수의 input 값
- 함수의 코드블럭을 구분하기 위해 indentation 필수(4칸)
2. Parameter vs argument
- parameter : 함수의 input에 대한 인터페이스(x,y,z)
def f(x,y,z)
- argument : 실제 parameter에 input된 값(a,b,c)
f(a,b,c)
3. 함수 형태
- parameter 유무, 반환값(return value)유무에 따라 함수 형태가 다름
- parameter O / return O
- parameter O / return X
- parameter X / return O
- parameter X / return X
Console I/O
- 콘솔창에서 문자열을 입력받는 함수
- input()을 통해 입력받은 데이터는 string 타입
- int(input())으로 하면 정수형으로 받을 수 있음(float도 가능)
- 프린트 문은 기본적인 출력 외에 출력의 형식 지정 가능
- 1) % string, 2)format string, 3)f-string
- month = 12, day = 25, dayofweek = "월요일"
- % string
- "%datatype" %(variable) 형태로 출력
- print("%d 월 %d일 %s 입니다." %(month, day, dayofweek)
- format string
- "{}".format(variable) 형태로 출력
- {}안에 변수명을 지정할 수도 있음
- "{name}".format(name = variable)
- print("{}월 {}일 {}입니다".format(month, day, dayofweek)
- f-string(python 3.6 이후, PEP498에 근거한 formatting 기법)
- f"{variable}" 형태로 출력
- print(f"{month}월 {day}일 {dayofweek}입니다")
- 글자수를 지정하여 출력할 수 있음
- "%8.2f"(={:8.2f}) => 8자리 수이며, 소수는 2자리 포함
- "%>(or < or ^)10s" => 열칸을 비우고 우측(or 좌측 or 가운데) 정렬
- "%>10s" => 열칸을 비우고 우측 정렬인데 나머지 빈칸은 "" 채움