대단원 Ⅰ. 모듈과 패키지 활용 교과서 6–39쪽
중단원 02. 모듈, 패키지 활용 · 14–35쪽
소단원 02. 모듈과 패키지 사용하기 · 19–25쪽
이 웹 주제의 연계 범위: 19–21쪽
웹 학습 주제 04 / 12
임포트 문과 호출법 연결하기
불러온 이름이 무엇인지 알면 호출법도 결정됩니다.
불러온 이름이 호출법을 결정해요
- 1greet.pyhello 정의
- 2임포트 문현재 이름 연결
- 3현재 코드연결한 이름으로 호출
| 임포트 | 연결된 이름 | 호출 |
|---|---|---|
| import greet | greet | greet.hello() |
| import greet as g | g | g.hello() |
| from greet import hello | hello | hello() |
| from greet import hello as h | h | h() |
import greet는 greet라는 이름을 만듭니다. 따라서 greet.hello()로 호출합니다. from greet import hello는 hello를 현재 공간에 연결하므로 hello()로 호출합니다. from 문도 모듈을 로드하며 필요한 함수 부분만 따로 실행하는 것은 아닙니다.
import greet as g는 현재 코드에서 g라는 별칭을 사용합니다. 원래 파일명이 바뀌는 것은 아닙니다. 이 코드만 실행한 상태에서는 greet라는 이름을 연결하지 않았으므로 greet.bye()는 NameError입니다.
from greet import *는 공개 이름들을 가져옵니다. __all__이 없으면 밑줄로 시작하지 않는 이름이 대상입니다. 이름의 출처가 흐려지고 같은 이름이 덮어써질 수 있으므로 직접 작성하는 앱에서는 명시적 임포트를 우선하세요.
직접 해 보세요
- 같은 hello 함수를 네 가지 방식으로 호출하세요.
- 두 모듈에 같은 함수가 있을 때 이름을 구별해 호출하세요.
이 설명에 이어서 실습하기
예제를 선택하면 바로 아래에서 코드를 수정하고 실행할 수 있습니다. 작성한 코드는 예제별로 저장됩니다.
CODE WORKSPACE
코드를 바꾸는 실습실
실행 엔진은 처음 실행할 때 내려받습니다. 패키지 크기에 따라 최초 준비에 최대 3분이 걸릴 수 있으며 네트워크가 필요합니다. 실행은 최대 30초이며 중지 후 다시 실행할 수 있습니다.
실행할 예제를 선택하세요.
PRACTICE / RETRY / UNDERSTAND
이 주제 연습 문제 4
이 주제와 연결된 문제만 보여 줍니다. 단원 전체 문제는 단원 안내 페이지에서 이어서 풀 수 있습니다.
인공지능 파이썬 실무