티스토리 뷰
반응형
def 로 정의한 함수들은 인터프리터를 재시작하면 그 정의가 사라진다. 함수를 별도 파일에 넣고 스크립트가 인터프리터의 대화형 모두에서 사용할 수 있는데, 이러한 파일을 모듈이라고 한다. 즉, 모듈은 파이썬 정의와 문장들을 담고 있는 파일이다. fibo.py 라는 파일을 만들고 아래 내용을 작성한다.
def fib(n) : # n 까지의 피보나치 수열 출력
a, b = 0, 1
while a < n:
print(a, end=' ')
a, b = b, a+b
print()
def fib2(n) : # n 까지의 피보나치 수열 리턴
result = []
a, b = 0, 1
while a < n:
result.append(a)
a, b = b, a+b
return result
fibo.py 파일이 존재하는 경로에서 파이썬 인터프리터를 실행하여 fibo 모듈을 import 하고 모듈내에서 정의된 함수를 호출할 수 있다.
>>> import fibo
>>> fibo.fib(1000)
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987
>>> fibo.fib2(100)
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
함수를 자주 사용한다면 지역 이름으로 대체할 수 있다.
>>> fib = fibo.fib
>>> fib(500)
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377
모듈을 import 하는 방법은 다양하다.
>>> from fibo import fib, fib2
>>> fib(500)
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377
>>> from fibo import *
>>> fib(500)
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377
>>> import fibo as fib
>>> fib.fib(500)
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377
>>> from fibo import fib as fibonacci
>>> fibonacci(500)
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377
END
반응형
'IT > Python' 카테고리의 다른 글
[Python] 파일 읽고 쓰기 (0) | 2020.08.01 |
---|---|
[Python] 출력 (0) | 2020.08.01 |
[Python] 루프 테크닉 (0) | 2020.07.17 |
[Python] 딕셔너리 (0) | 2020.07.16 |
[Python] 집합 (0) | 2020.07.16 |
댓글
공지사항