1. 모듈
모듈이란 특정 기능(함수)을 포함하고 있는 파일(xxx.py)로 다른 프로그램에 이식해서 사용하는 것을 의미한다.
함수를 학습할 때 특정 기능을 함수로 만들고 저장한 파일이 모듈이다. 즉, 기능을 모아 함수가 되고 함수가 모여서 모듈이 되는 것이다.
모듈은 파이썬에서 기본적으로 제공하는 것도 있고, 개인 혹은 단체가 만들어서 배포하는 것도 있다.
모듈을 사용할 때의 장점은 프로그램 개발 시간을 단축할 수 있고 모듈은 이미 검증된 코드이므로 오류가 적다는 장점이 있다. 또한 팀원들이 기능 구현을 분업화하고 공유할 수 있어 전체적인 작업 속도를 향상시킬 수 있다.
1. as 키워드
모듈명이 길면 사용할 때마다 코드가 길어지는 불편함이 있다. 예를 들어서 설명하면 calaulator 모듈의 함수를 불러오기 위해서는 매번 앞에 calaulator를 붙여 사용해야 한다. 이런 경우에 as 키워드를 이용하면 모듈의 이름을 다른 이름으로 치환할 수 있다.
'calaulator'를 'cs'로 치환하면 기존의 'calaulator' 대신 'cs'를 이용할 수 있다.
2. from 키워드
모듈은 자칫 잘못하면 필요하지 않은 기능까지 가져와야 하는 비효율적인 상황이 발생할 수 있다. from 키워드를 사용하면 모듈의 전체 기능 중에서 일부 기능만 import할 수 있다.
<콤마(,) 에스터리크(*)를 이용한 import 구문>
콤마(,)
-모듈을 import할 때 콤마(,)를 이용해서 기능을 나열할 수 있다.
3. 자동으로 실행되는 모듈 함수
여러 개의 모듈을 사용하는 경우 주의할 점은 만약 모듈에 함수를 호출하는 코드가 있다면 자동으로 함수가 실행된다.
실행된 파일은 'ch12_07.py'로 모듈을 import하고 '실행 파일입니다.' 문자열을 출력하는 코드가 전부이다.
즉, 다시 말해 모듈을 import만 했지 모듈의 함수를 호출하지는 않았다. 그런데 모듈의 함수인 fun()이 모두 실행되는 결과가 나왔다.
실행 결과에는 오류가 없더라도 원래 의도와는 전혀 다르게 프로그램이 실행된다.
모듈의 함수가 자동으로 실행되지 않게 하는 방법은 프로그램을 실행하는 '실행 파일'과 '모듈 파일'을 구분하여 모듈의 함수가
자동으로 실행되지 않도록 한다.
실행 파일과 모듈 파일을 구분하는 방법은 __name__변수를 이용한다.
4. __name__전역변수
파이썬에는 기본적으로 __name__이라는 전역 변수에 파일 이름이 저장된다.
'module01.py', 'module02.py', 'module03.py' 파일의 마지막에 다음 코드를 한 줄 추가한다.
print('__name__:', __name__) #__name__ 전역변수 출력
'Python' 카테고리의 다른 글
[Python] 클래스, 객체 (0) | 2022.06.04 |
---|---|
[Python] 함수, 변수 (0) | 2022.05.20 |