본문 바로가기
Study/Python

[Python #2] Loop & Function

by YOONAYEON 2021. 9. 23.
반복문

 

- while 반복문

  * 조건식 후에 꼭 ' : ' 빼먹지 말기

  * 여러 개의 명령을 쓸 경우, 블록의 들여쓰기 규칙을 잘 지켜야 에러가 나지 않음

while 조건:
    명령

 

 

- for 반복문

  * 컬렉션의 요소를 순서대로 반복하면서 루프의 명령을 실행

  * 컬렉션은 리스트, 문자열, HashTable 이 대표적

for 제어변수 in 컬렉션:
     명령

 

 

 

함수

- 일련의 코드 블록에 이름을 붙여 정의한 것

- 반복적으로 사용되는 코드는 한 번 정의해두고 계속 사용

- def키워드를 앞에 쓴 후 함수이름 정의

- 매개변수가 있는 경우 자료형 없이 이름만 나열

- 함수를 호출하기 전에 먼저 함수를 정의해야 함(-> 인터프리터 방식이므로 한줄 한줄 해석하며 바로 기계어 변환)

 

def 함수명(인수 목록) :
     본체

 

- pass명령

  * 함수가 아닌 키워드로 해석기가 직접 지원

  * 해석기가 이 명령을 만나면 그냥 무시함. 아무 동작도 하지 않음

  * why-? 파이썬은 괄호를 쓰지 않기 때문에 빈 코드를 의미하는 별도의 키워드가 필요

 

 

- 가변 인수

  * 일반적인 함수는 정의문에 필요한 인수의 개수가 명시되어 있으나 가변인수는 임의 개수의 인수를 받음

  * 인수 이름 앞에 ' * ' 기호를 붙이면 인자가 배열처럼 처리됨

def 함수명(*인수이름) :

 

 

- 인수의 기본값

  * 값이 잘 바뀌지 않는 인수는 인수 목록에서 기본값 지정 가능

  * 기본값이 있는 인수는 옵션으로 취급되어 생략 가능하고 기본값으로 전달됨

  def 함수명(인수1, 인수2, 인수3 = 기본값) : 

  * 어떤 인수든지 기본값을 지정할 수 있으나 기본값이 있는 인수 뒤에 일반 인수는 올 수 없음

def calc(a, b, step = 1)  #가능
def calc(a, step = 1, b)  #에러

 

- 함수 호출 시

  * 값만 줄 경우 위치에 따라 차례대로 대입

  * 인수에 이름을 주어 대입할 경우 순서가 바뀌어도 상관없이 정확하게 전달

  * 앞쪽에 키워드 변수가 왔으면 뒤쪽 인수도 이름을 지정해야 함

'Study > Python' 카테고리의 다른 글

[Python #5] Class, Module, Package  (0) 2021.10.31
[Python #5] Dictionary, Set, Collection  (0) 2021.10.10
[Python #4] File  (0) 2021.10.07
[Python #3] String, List & Tuple  (0) 2021.10.05
[Python #1] 파이썬 기본 구조  (1) 2021.09.23