- 함수 (function)
언제든지 해당 코드 블록을 실행할 수 있습니다.
함수를 먼저 정의해야 합니다.
- 인수, 매개변수 (arguments)
- 반환값(return value)
반환값이란 함수를 호출한 곳으로 함수의 최종 실행 결과를
전달하는 값입니다.
인수는 여러 개 존재할 수 있지만, 반환값은 언제나
하나만 존재해야 합니다.
모든 함수가 반환값이 있는 것은 아닙니다.
함수 실행 후에 딱히 반환할 값이 없다면 return을 생략할 수 있습니다.
예외처리, file IO, 가변인수, 전역변수, 지역변수, 모듈 import, 참조,
NameError: 정의되지 않은 변수나 함수, 클래스를
사용할 때 발생합니다.
ValueError: 주로 형 변환시 발생하며, 내부 값의 형태가
잘못되었을 때 발생합니다.
ZeroDivisionError: 숫자를 0으로 나누었을 때 발생합니다.
IndexError, KeyError: 존재하지 않는 인덱스나 키를 사용하여
시퀀스, 딕셔너리를 조회했을 때 발생합니다.
TypeError: 연산 수행 시 피연산자의 데이터 타입이 올바르지
않을 경우 발생합니다.
raise (error Type)을 작성하시면 예외를 발생시킵니다.
if end <= 0:
raise ValueError
write :
파이썬에서는 파일 입/출력을 할 때
open()이라는 함수를 사용합니다.
ex) open('파일 경로', 모드)
파일 경로는 입/출력 대상의 파일 경로입니다.
디렉터리 경로를 포함시킵니다.
모드는 읽기, 쓰기, 추가 등 무엇을 할 지
결정하는 인수입니다.
모드의 종류
r: 파일을 읽어들입니다. 읽어들일 파일이 없으면
예외가 발생합니다.
w: 파일에 데이터를 저장합니다.
파일이 이미 존재한다면 덮어씁니다.
a: 파일에 데이터를 추가합니다. (이미 존재하는 파일에)
파일이 존재하지 않는다면 새롭게 생성도 해 줍니다.
try:
# 파일 저장 기능 (write, append)
file_path = 'C:/test/test.txt'
# 파일 입출력을 실행하는 내장 함수 open()
# 반환값으로 파일 입출력을 담당하는 객체를 리턴합니다.
# 첫번째 인수로 파일 경로를, 두번쨰 인수로 모드를 설정.
f = open(file_path, 'a')
text = '\na모드는 저장경로에 명시한 파일이 존재하지 않을 경우에는 하나 만들어 줍니다..'
# 파일을 저장할 때는 f.write() 메서드를 사용합니다.
# 저장할 데이터를 인수로 전달합니다.
f.write(text)
print('파일 저장 완료')
except:
print('파일 저장 실패!')
finally:
# 파일 입출력은 하드디스크 자원을 사용하는 코드이므로
# 반드시 사용 후 그 자원을 해제하여 메모리 누수를 방지합니다.
f.close()
위치 가변 인수 : 인수를 선언할 때
인수 앞에 * 기호를 붙여 선언하며, 이런 경우에 여러 개의
데이터를 튜플로 묶어서 함수 내부로 전달합니다.
가변 인수와 일반 인수를 동시에 사용하실 때에는 일반 인수를
반드시 키워드 인수 방식으로 전달하셔야 합니다.
지역변수가 함수 내부에서만 사용하는 변수라면
전역변수는 프로그램 전체에서 사용하는 공용 변수입니다.
파이썬에서는 들여쓰기 없이 선언된 변수를 전역변수로
취급하며, 전역변수는 함수 내부, 제어문 내부 등
프로그램 어디에서나 사용이 가능합니다.
지역 변수란 함수 내부에 선언된 변수를 말합니다.
지역 변수는 함수 내부에서만 사용할 수 있으면
함수의 호출이 종료되는 순간 메모리에서 자동 소멸합니다.
지역변수의 사용을 함수 내부로 제한하는 이유는
변수의 이름 충돌을 피하고, 메모리를 절약하기 위함입니다.
모듈은 파이썬 코드를 작성해 놓은 스크립트 파일이며
모듈 안에는 변수, 함수, 클래스 등이 정의되어 있습니다.
파이썬에서는 주요 기능들을 표준 모듈로 구성하여
표준 라이브러리로 제공하고 있습니다.
표준 모듈이나 외부 모듈을 현재 모듈로 불러서 사용할 때는
import라는 키워드를 사용합니다.