파이썬에는 def 키워드와 return 키워드를 사용하여 다음과 같이 함수를 만들 수 있다.
- 숫자 x를 입력하면 두 배 (*2)가 되도록 하는 함수는 다음과 같다.
함수의 입력은 한 개가 아니라 여러 개가 되어도 상관없다. 입력 변수가 여러개이면 쉼표, (comma) 를 사용하여 함수를 정의한다. 입력 변수는 원하는 만큼 얼마든지 만들 수 있다.
함수에 이름을 주지 않거나 코드를 짧게 줄여쓰는 방법으로 람다(lambda)함수라는 것이 있다.
def f(x):
return 2 * x
와 같은 함수를 람다(lambda)함수로 정의하면 다음과 같다.
람다 함수는 함수 자체를 다른 함수의 인수로 넣을 때, 함수의 출력값을 함수로 받을 때 유용하게 사용된다.
함수에 넣은 입력 변수나 함수 안에서 만들어진 변수는 함수 바깥에서는 사용할 수 없다. 혹시 이름이 같은 변수가 있다고 하더라도 별개의 변수가 된다. 따라서 함수 안에서 만들어지고 사용되는 함수를 지역 변수 (local variable) 이라고 한다.
지역 변수와 반대로 함수 바깥에서 만들어진 변수는 함수 안에서 사용할 수 있다. 이러한 변수를 전역 변수(global variable)이라고 한다.
이때 바깥의 변수와 같은 이름의 변수를 함수 안에 만들면 안 된다.
만약 함수안에서 함수 바깥에 있는 변수의 값을 꼭 바꿔야만 한다면 다음과 같이 함수 이름 앞에 global 키워드를 선언해 주면 된다.
- 출처: [데이터 사이언스 스쿨] 2.6 파이썬 함수
'IT 와 Social 이야기 > Python' 카테고리의 다른 글
[데이터 사이언스 스쿨] 2.8 여러 개의 자료를 한 변수에 담기 (0) | 2021.03.13 |
---|---|
[데이터 사이언스 스쿨] 2.7 파이썬 for 반복문 (0) | 2021.03.13 |
[데이터 사이언스 스쿨] 2.5 파이썬 조건문 기초 (0) | 2021.03.12 |
[데이터 사이언스 스쿨] 2.4 파이썬의 문자열 형식화 - 연습문제 (0) | 2021.03.12 |
[데이터 사이언스 스쿨] 2.4 파이썬의 문자열 형식화 (0) | 2021.03.10 |