일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- For
- mariadb
- React
- deep learning
- Machine Learning
- 기초 수학
- Backbone.js
- laravel
- AWS
- Babel
- php
- linux
- NCP
- SQL
- rabbitmq
- Go
- nginx
- docker
- Switch
- Redux
- webpack
- python
- phpredis
- 블레이드 템플릿
- fastapi
- nodejs
- Redis
- javascript
- CentOS
- Node
- Today
- Total
개발일기
Python - 함수정의 본문
프로그래밍에서 함수를 사용하는 이유?
함수를 사용하는 이유는 반복적으로 사용할 기능을 가진 소스코드를 하나로 묶어 필요할 때 마다 호출하기 위해 함수를 사용한다. 소스코드의 흐름을 확인하기가 쉽다. 함수에 대한 간략한 주석과 함께 소스코드가 구성되어져 있으면 어떤 기능을 수행하는지 한눈에 파악하기 쉽기 때문이다. 또한 중복되는 소스코드를 제거하기에 소스코드도 한결 간결하게 보이게 된다.
기본적인 Python의 함수 규칙
- 함수명을 정의할 때는 소문자로 정의한다.
- 함수명에 띄어쓰기를 사용할 때는 _(under score)를 사용하여 구분한다.
- 함수명과 매개변수를 사용한 줄에는 마지막으로 :를 사용하여 함수의 시작을 알린다.
- 공백 4칸으로 들여쓰기를 한다.(스페이스바 사용)
- 함수의 마지막 줄은 빈줄을 추가하여 다른 함수 및 변수와 구분한다.
파이썬의 규칙은 PEP8를 기반으로 가이드가 나와있다. 무조건 지켜야 하는 내용은 아니지만 공식적으로 제안하는 규칙인만큼 자신이 진행하는 프로젝트와 구성원들에 따라 적절하게 규칙을 적용하여 진행하면 좋을 것 같다.
https://www.python.org/dev/peps/pep-0008/
함수 정의 방법
# 함수 정의
def 함수명(매개변수) :
추가할 문장1...
추가할 문장2...
...
return 반환할 값
# 빈줄을 추가하여 다른 함수와 구분
파이썬에서 함수를 정의할 때는 함수명 앞에 def라는 키워드를 추가해줘야한다. definition이라는 의미로써 함수를 정의한다는 일종의 선언부라고 생각하면 된다.
함수명 다음에는 매개변수를 추가하면 된다. 함수의 매개변수값은 함수를 호출할 때 대입하는 인자값에 따라 유동적으로 값이 바뀌게 된다.
함수 선언부분의 마지막 줄에는 : 을 추가한다. 그 다음줄부터는 해당 함수를 호출할 때, 구현할 로직을 입력하면 된다.
함수에 반환값이 존재할 경우는 return에 반환값을 추가하고 반환할 값이 딱히 없으면 return은 생략하면 된다.
함수 호출 방법
# 함수 호출
함수명(인자들)
함수를 호출할 때, 다른 언어과 동일한 방법으로 함수명과 인자들을 추가하여 호출하면 된다.
함수 정의와 호출을 할 때, 매개변수와 인자라는 용어가 나오는데 이 두가지의 용어는 의미는 비슷하지만 서로 다른 상황에 사용되는 용어이다. 매개변수와 인자에 대해 혼용할 수도 있기에 간략하게 정의하였다.
- 매개변수 (Parameter) : 함수와 메서드의 입력변수 명을 뜻한다.
- 인자 (Argument) : 함수와 메서드의 입력값을 뜻한다.
'프로그래밍 언어 > Python' 카테고리의 다른 글
Python - Type Hinting (0) | 2021.12.01 |
---|---|
Python - for 반복문과 enumerate 함수 (0) | 2021.11.26 |
Python - 자료형에 대한 정리 (0) | 2021.11.25 |
Python - Dict 자료형이란? (0) | 2021.09.17 |
Python - json 형식 (0) | 2021.09.16 |