코드의 효율성을 높임.
코드의 재사용성을 높임. - 개발 시간 감소
코드의 가독성을 높임.
기타 제어 흐름 도구.
문법적으로 해당 문장이 필요하지만, 프로그램이 특별히 할 일이 없을 때 사용.
파이썬에서는 함수 내부에 함수를 사용할 수 있다.
함수 안에서 만든 함수는 해당 함수 내부에서만 사용 가능.
람다: 런타임에 생성해서 사용할 수 있는 익명 함수 (함수 이름이 없는 함수)
print( (lambda x,y: x + y)(10, 20) )
비슷한 역할을 하는 함수들의 집합
함수, 변수, 클래스를 모아 놓은 파일.
코드의 저장소.
# 아래와 같이 모듈의 별명을 설정할 수 있다
import mycalculator as mc
# 모듈이름.함수이름()
print(mc.add(4, 2))
여러 모듈을 하나로 모아둔 폴더
# 패키지 설치 방법
# pip install 패키지이름
$ pip install pandas
패러다임(Paradigm):
한 시대의 사람들의 견해나 사고를 근본적으로 규정하고 있는 테두리.
인식의 체계 또는 사물에 대한 이론적인 틀이나 체계를 의미하는 개념
일이 진행되는 순서대로 프로그래밍
객체를 먼저 작성하고 함수를 작성.
작성된 객체는 객체 간의 상호작용이 있음.
장점
단점
객체지향 프로그래밍(OOP, Object Oriented Programming)
패러다임파이썬 - OOP Part 1. 객체 지향 프로그래밍(OOP)은 무엇인가? 왜 사용하는가?
데이터 사이언티스트에게 적합한 프로그래밍 패러다임
장점: 효율성, 버그 없는 코드, 병렬 프로그래밍
함수로 문제를 분해
데이터 사이언티스트에게 적합한 프로그래밍 패러다임
순수함수
: 부작용이 전혀 없는 함수
파이썬 코드 스타일 가이드.
유지보수 측면에서 빠른 코드 이해로 개발 기간이 줄고 가독성 측면에서도 도움.
코드 스타일 - The Hitchhiker's Guide to Python
한 줄의 코드 길이: 79자 이하
함수와 클래스는 다른 코드와 빈 줄 두 개
로 구분
클래스에서 함수는 빈 줄 하나
로 구분
변수 할당
앞뒤에 스페이스를 하나만 사용
리스트 인덱스, 함수 호출
에는 스페이스를 사용 안함
쉼표(,), 쌍점(:), 쌍반점(;)
앞에서는 스페이스를 사용 안함
코드의 내용과 일치하지 않는 주석은 피하기
불필요한 주석 피하기
변수명 앞에 _(언더바)
가 붙으면 함수 등의 내부에서만 사용되는 변수
변수명 뒤에 _(언더바)
가 붙으면 라이브러리 혹은 파이썬 기본 키워드와의 충돌을 피하고 싶을 때 사용
가독성을 위해 소문자 L, 대문자 O, 대문자 I
를 가능하면 사용하지 않음
모듈(Module) 명은 짧은 소문자로 구성 (필요하다면 언더바 사용)
클래스 명은 파스칼 케이스(PascalCase) 컨벤션
으로 작성
함수명은 소문자로 구성
상수(Constant)는 모듈 단위에서만 정의하고 모든 단어는 대문자로 표기
모든 공백을 "_"로 표기.
모든 단어는 소문자
함수, 변수 등을 명명할 때 사용
모든 단어가 대문자로 시작
UpperCamelCase, CapWords라고 불리기도 함
클래스를 명명할 때 사용
처음은 소문자로 시작, 이후의 모든 단어의 첫 글자는 대문자
lowerCamelCase
파이썬에서는 거의 사용하지 않음