VISUAL SUMMARY / UNIT 01
Ⅰ. 모듈과 패키지 활용 · 그림으로 정리
흐름도와 표를 보고 각 단계를 내 말로 설명하세요.
단원 실습으로 돌아가기 →대단원 Ⅰ. 모듈과 패키지 활용 교과서 6–39쪽
중단원 01. 모듈, 패키지의 개요 · 8–13쪽
소단원 01. 모듈의 개념 및 필요성 · 9–10쪽
중단원 01. 모듈, 패키지의 개요 · 8–13쪽
소단원 02. 패키지의 개념 및 필요성 · 11–12쪽
이 웹 주제의 연계 범위: 8–13쪽
모듈과 패키지가 필요한 이유
파일과 폴더로 보는 재사용
| 구조 | 비유 | 예 |
|---|---|---|
| 모듈 | 기능 상자 | calculator.py |
| 패키지 | 상자를 묶은 서랍 | nature/animals/ |
| 라이브러리 | 재사용 도구 모음 | 표준 라이브러리 |
대단원 Ⅰ. 모듈과 패키지 활용 교과서 6–39쪽
중단원 02. 모듈, 패키지 활용 · 14–35쪽
소단원 01. 모듈 정의하기 · 15–18쪽
이 웹 주제의 연계 범위: 15–16쪽
실행문·함수·클래스로 모듈 정의하기
정의와 호출의 실행 시점
- 1import파일의 최상위 실행
- 2def / class이름과 기능 정의
- 3함수 호출본문 실행
| 코드 위치 | 임포트할 때 | 호출할 때 |
|---|---|---|
| 최상위 print | 출력 | 자동 반복 안 함 |
| def 안의 print | 정의만 준비 | 출력 |
| class 안 메서드 | 메서드 정의 | 메서드 본문 실행 |
대단원 Ⅰ. 모듈과 패키지 활용 교과서 6–39쪽
중단원 02. 모듈, 패키지 활용 · 14–35쪽
소단원 01. 모듈 정의하기 · 15–18쪽
이 웹 주제의 연계 범위: 17–18쪽
__name__과 __main__
같은 파일, 두 가지 역할
- 1직접 실행__name__ = "__main__"
- 2조건 비교이름이 __main__인가?
- 3참이면시험용 코드 실행
| 실행 방법 | __name__ | main 가드 |
|---|---|---|
| python circle.py | __main__ | 실행 |
| import circle | circle | 건너뜀 |
| 최상위 실행문 | 두 경우 모두 | 가드 밖이면 실행 |
대단원 Ⅰ. 모듈과 패키지 활용 교과서 6–39쪽
중단원 02. 모듈, 패키지 활용 · 14–35쪽
소단원 02. 모듈과 패키지 사용하기 · 19–25쪽
이 웹 주제의 연계 범위: 19–21쪽
임포트 문과 호출법 연결하기
불러온 이름이 호출법을 결정해요
- 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() |
대단원 Ⅰ. 모듈과 패키지 활용 교과서 6–39쪽
중단원 02. 모듈, 패키지 활용 · 14–35쪽
소단원 02. 모듈과 패키지 사용하기 · 19–25쪽
이 웹 주제의 연계 범위: 21–25, 35쪽
패키지 구조와 __all__
폴더 경로와 점 경로 연결
- 1nature/패키지
- 2animals/하위 패키지
- 3bird.py모듈
- 4wild()함수
| 표현 | 대상 | 호출 예 |
|---|---|---|
| nature.animals.bird | 모듈 경로 | nature.animals.bird.wild() |
| from nature.animals import bird | bird 모듈 | bird.wild() |
| __all__ = ["bird"] | 별표 임포트 이름 | 명시적 임포트는 별개 |
대단원 Ⅰ. 모듈과 패키지 활용 교과서 6–39쪽
중단원 02. 모듈, 패키지 활용 · 14–35쪽
소단원 03. 여러 가지 모듈 활용하기 · 26–33쪽
이 웹 주제의 연계 범위: 26–28쪽
os와 sys로 실행 환경 살펴보기
환경과 실행 인자를 구별해요
- 1터미널python main.py A B
- 2sys.argv[파일명, A, B]
- 3os.getcwd()파일을 찾는 기준 위치
| 도구 | 알아내는 것 | 주의 |
|---|---|---|
| os.getcwd() | 현재 작업 폴더 | 소스 파일 폴더와 다를 수 있음 |
| os.listdir() | 폴더 안 이름 | 웹에서는 가상 파일 |
| sys.argv | 실행 인자 | 모든 인자는 문자열 |
| sys.exit() | 실행 종료 | 아래 코드는 실행 안 됨 |
대단원 Ⅰ. 모듈과 패키지 활용 교과서 6–39쪽
중단원 02. 모듈, 패키지 활용 · 14–35쪽
소단원 03. 여러 가지 모듈 활용하기 · 26–33쪽
이 웹 주제의 연계 범위: 29쪽
math · 계산을 함수로 표현하기
음수에서도 올림과 내림은 방향으로
- 1−4floor(−3.5)
- 2−3.5원래 값
- 3−3ceil(−3.5)
| 함수 | 역할 | 예 |
|---|---|---|
| floor | 작거나 같은 최대 정수 | floor(-3.5) → -4 |
| ceil | 크거나 같은 최소 정수 | ceil(-3.5) → -3 |
| sqrt | 제곱근 | sqrt(81) → 9.0 |
| gcd / factorial | 최대공약수 / 팩토리얼 | gcd(12,18) → 6 |
대단원 Ⅰ. 모듈과 패키지 활용 교과서 6–39쪽
중단원 02. 모듈, 패키지 활용 · 14–35쪽
소단원 03. 여러 가지 모듈 활용하기 · 26–33쪽
이 웹 주제의 연계 범위: 30–31, 33, 37쪽
random · 결과보다 조건 확인하기
난수 도구는 결과의 조건으로 골라요
- 1숫자 하나?randint / randrange
- 2항목 하나?choice
- 3여러 항목?sample
- 4순서 변경?shuffle
| 함수 | 포함 범위 / 변화 | 반환 |
|---|---|---|
| randint(1,6) | 1과 6 포함 | 정수 |
| randrange(1,6) | 6 제외 | 정수 |
| sample(L,2) | 위치 중복 없이 추출 | 새 리스트 |
| shuffle(L) | 원본 순서 변경 | None |
대단원 Ⅰ. 모듈과 패키지 활용 교과서 6–39쪽
중단원 02. 모듈, 패키지 활용 · 14–35쪽
소단원 03. 여러 가지 모듈 활용하기 · 26–33쪽
이 웹 주제의 연계 범위: 31–33, 38쪽
datetime · 날짜를 계산하는 프로그램
문자열에서 날짜 계산까지
- 1"2026-12-25"문자열
- 2date.fromisoformat날짜로 변환
- 3날짜 − 날짜timedelta
- 4days일수 꺼내기
| 도구 | 결과 | 주의 |
|---|---|---|
| date.today() | 오늘 날짜 | 실행 날짜에 따라 다름 |
| weekday() | 월 0 … 일 6 | 요일 이름은 따로 대응 |
| strftime() | 표시용 문자열 | 계산은 날짜 상태에서 |
| timedelta(days=1) | 하루 간격 | 월말·윤년 자동 처리 |
대단원 Ⅰ. 모듈과 패키지 활용 교과서 6–39쪽
중단원 02. 모듈, 패키지 활용 · 14–35쪽
소단원 03. 여러 가지 모듈 활용하기 · 26–33쪽
이 웹 주제의 연계 범위: 32–33쪽
PyPI와 서드파티 패키지
설치 이름과 임포트 이름은 다를 수 있어요
- 1가상환경 선택
- 2python -m pip install 패키지
- 3같은 Python으로 import
- 4짧은 예제로 동작 확인
| 설치 | 임포트 | 용도 |
|---|---|---|
| numpy | numpy | 수치 배열 |
| pillow | PIL | 이미지 처리 |
| beautifulsoup4 | bs4 | HTML 분석 |
| scikit-learn | sklearn | 머신러닝 |
대단원 Ⅰ. 모듈과 패키지 활용 교과서 6–39쪽
마무리·종합 평가 연계
이 웹 주제의 연계 범위: 13, 34–39쪽
단원 마무리와 종합 평가
한 단원, 세 가지 확인
- 1설명하기개념을 내 말로
- 2예상하기실행 전 결과 추적
- 3바꾸기조건 변경 후 검증
| 점검 | 질문 |
|---|---|
| 개념 | 왜 이 도구를 선택했나요? |
| 코드 | 입력과 출력은 무엇인가요? |
| 검증 | 조건을 바꾸어도 동작하나요? |
대단원 Ⅰ. 모듈과 패키지 활용 교과서 6–39쪽
추가 실습 · 교과서 밖 확장
이 웹 주제의 연계 범위: 보강 · 수행평가 연결
1단원 프로젝트 · 우리 반 기능 패키지
기능에서 완성 앱까지
- 1요구 기능 정하기
- 2기능 모듈 구현
- 3입력과 오류 시험
- 4화면 연결·기록
| 산출물 | 확인할 내용 |
|---|---|
| 기능 코드 | GUI 없이도 시험 가능 |
| 실행 결과 | 정상·빈 값·경계값 비교 |
| 학습 기록 | 오류 원인과 수정 근거 |
인공지능 파이썬 실무