2018/09/04 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 1 - Hello World!
2018/09/04 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 2 - 변수와 자료형, 연산자
2018/09/05 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 3 - 파이썬의 자료구조, 리스트 (list)
2018/09/05 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 4 - 파이썬의 스트링 (string)
2018/09/05 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 5 - 스트링과 리스트 처리-1
2018/09/05 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 6 - 스트링과 리스트 처리-2
2018/09/05 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 7 - 튜플 (tuple)
2018/09/05 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 8 - 딕셔너리 (Dictionary)
2018/09/08 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 9 - 집합 (set)
2018/09/08 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 10 - 사용자 입출력
2018/09/09 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 11 - 변수와 메모리
2018/09/09 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 12 - 조건과 조건문(분기문)
2018/09/09 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 13 - 반복문 while문
2018/09/10 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 14 - 반복문 for문
2018/09/12 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 15 - 함수와 프로시져
2018/09/14 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 16 - 함수 - 디폴트 및 키워드 인수
2018/09/14 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 17 - 함수 - 전역변수, 지역변수
2018/09/14 - [교육 노트/파이썬 강의] - [파이썬 때려잡기] Python 강의 18 - 함수 인자 변경
우리가 유용한 기능을 함수로 묶는것처럼 파이썬 개발자들도 유용한 기능을 묶어 이미 각종 함수를 만들어 두었다.
abs() len() 과 같은 내장 함수들이 그 예시이다. 내장함수의 경우 그냥 바로 파이썬에서 사용가능하지만
우리가 만든 함수들을 다른 파이썬 파일에서 사용하려면 어떻게 해야할까
1. import
import는 다른 *.py에 있는 함수들을 사용할때 그 다른 *.py를 포함시키는 것을 의미한다.
예를 들어 내가 게임을 만들기위한 함수들을 묶어 mygamemodule.py에 몰아서 작성했다고 하면
mygamemodule.py은 모듈이며
해당 모듈을 사용하기 위한 파이썬 코드에서 import mygamemodule 와 같이 사용한다.
모듈 내용
모듈 사용시
이런식으로 import 모듈
모듈명.함수 .. 과 같이 사용한다.
2. from
모듈명.함수에서 모듈명을 써주기 너무 귀찮다.
다음과 같이 모듈에서 함수만 빼와서 사용할수있다.
이런경우 printUserMessage함수만 빼온것이다.
*을 사용하면 모듈의 모든 함수를 전부 불러온것이다.
3. 모듈의 이름 __name__
mygamemodule
다음과 같이 __name__를 통하여 모듈의 이름을 확인할수있다.
아니 모듈가져온게 모듈이름이지 이걸 왜 확인하느냐 하면...
과 같이 마지막에 __name__을 출력하고 이 모듈 자체를 실행시켜보면
__main__
과 같이 뜬다
그럼 print(__name__) 이 추가된 모듈을 import 해보자
다음과 같이 mygame.py에서 mygamemodule의 print(__name__) 이 실행되어 mygamemodule 가 출력되었다.
1. 즉 모듈에 있는 내용도 import하면 실행이 된다
2. 모듈자체를 실행하면 __name__ 이 __main__ 이고 import로 하면 모듈의 이름이 뜬다.
위와 같은 특징을 이용하여
모듈을 임포트 했을때에는 모듈의 내용이 실행되지 않도록하고 (거기에 있는 함수나 전역변수만 사용하기위해서)
모듈로 사용하지 않았을때는 그 자체로 파이썬 프로그램으로 실행도 되게 할수있다.
과 같이 파이썬 코드에 __name__ 이 __main__인지 검사하는 if문을 만들고 해당 if문 블록에서 프로그램을 작성하면
이를 모듈로사용 할수도 있고 파이썬 프로그램 자체로 사용하게 할수도 있다.
주로 편의를 위하여
다음과 같이 별도의 main함수를 정의하여 사용한다.
'교육 노트 > 파이썬 강의' 카테고리의 다른 글
[파이썬 때려잡기] Python 강의 21 - 그림그리는 거북이 모듈 (1) | 2018.09.17 |
---|---|
[파이썬 때려잡기] Python 강의 20 - 난수 생성 모듈 (0) | 2018.09.14 |
[파이썬 때려잡기] Python 강의 18 - 함수 인자 변경 (0) | 2018.09.14 |
[파이썬 때려잡기] Python 강의 17 - 함수 - 전역변수, 지역변수 (0) | 2018.09.14 |
[파이썬 때려잡기] Python 강의 16 - 함수 - 디폴트 및 키워드 인수 (0) | 2018.09.14 |