하나의 python 파일 : hellol1.py (다른 이름과 겹치지 않게 해 주세요)
현재 우리가 사용하고 있는 파일은 확장자가. ipynb에요
파이썬 파일 하나가 하나의 모듈이 되고 py 뺀 이름이 모듈 병이에요~!
module은 변수, function(함수), class를 저장하고 있는 파일이에요
module을 사용하는 이유는 코드의 재 사용성과 관리 때문이에요.
python의 module 은 크게 2가지 종류가 있어요!
1. C언어로 구현된 module
2. python 언어로 구현된 module
import를 이용하면 module을 이용할 수 있어요!
python의 모든 것은 객체예요. module 도 객체로 인식
1.module을 만들 거예요 (새로운 python source code를 만들 거예요.)
2. 약간의 환경설정
- code 상으로 설정하는 방법 (1회성)
- 시스템적으로 환경변수를 이용해서 설정하는 방법 (영구적)
- 윈도 시스템의 환경변수를 하나 만들어요 → PYTHONPATH
c 드라이브에 새폴더 만들 거예요 → python_lib(이름은 자유 (영어로)) → 내 pc 마우스 오른쪽 속성 → 고급 시스템 설정 (시스템 설정 고급) → 환경변수 → 사용자 변수 → 새로 만들기 →
변수 이름 : PYTHONPATH
변숫값 : 디렉터리 찾기 → 내 pc → c → python_lib 확인
- 윈도우 사용할 때 많은 환경변수들이 있는데 각각의 application(프로그램)들은 시작할 때 환경변수를 읽어와서 사용해요.
- 따라서 새로운 환경변수를 인지시키기 위해 사용하는 프로그램을 재시작해야 해요.
python_lib 폴더 가서 → 텍스트 문서 새로 만들기 (뒤에 확장자명 다 보이게 설정해주세요) →
문서 이름 module1.py로 바꿔주세요 → 노트패드로 열기! →
##변수
my_PI = 3.141592
#함수
def my_func(a,b):
return a + b
#class
class Mycar(object):
def __init__(self,maker,cc):
self.maker = maker
self.cc = cc
작성 후 저장 ctrl + s
module을 불러들여서 변수, 함수, class를 이용해 보아요!
import module1
print(module1.my_PI)
print(module1.my_func(100,200))
car1 = module1.MyCar('현대',3000)
3.141592
300
파일명이 길어서 별명 사용할 수 있어요
alias 이용!!
import module1 as m1
print(m1.my_PI)
print(m1.my_func(100,200))
car1 = m1.my_PI
3.141592
300
###
from 모듈 이름 import 함수, 변수, 클래스
#from module1 import my_PI
#print(my_PI)
#3.141592
from module1 import * *의 의미는 모든 것 가져와서 쓸 거예요
print(my_func(100,100))
200
####
이런 방식으로 module을 만들어서 사용하면 편리하고 좋아요
그럼 module을 관리하는 입장에서 한번 살펴보아요
당연히 module은 계층적으로 관리하는 게 좋아요
폴더를 계층화시켜서 특정 module의 역할에 맞는 폴더에 넣어서 관리
package : python에서. (dot operator, 여기에서 계층구조를 표현)을 이용해서 python module을 관리!
###
패키지 만들어볼 거예요
새폴더(myFolder) 생성 → 폴더 안에 다시 myModule 폴더 생성
→ module1.py 파일을 잘라내서 myModule 폴더 안에 넣어주세요 → 폴더 경로가 바뀌었어요!!
#import myFolder.myModule.module1
#print(myFolder.myModule.module1.my_PI) 너무 길어요
# import myFolder.myModule.module1 as m1
# print(m1.my_PI)
from myFolder.myModule import module1
print(module1.my_PI)
3.141592
##
module 은 외장 module 과 내장 module로 구분돼요!
내장 module : python 과 함께 설치되는 module (다운로드 X)
- 내장 module 도 import 선언 하셔야해요
import sys
sys.path.append('C:/python_lib')
from myFolder.myModule import module1
print(module1.my_PI)
3.141592
외장 module : 외부 Repository에 있는 module 지칭 (다운로드해서 사용해야 해요!)
'Python' 카테고리의 다른 글
| 0712_python_MySQL_Module (0) | 2021.07.12 |
|---|---|
| 0708 Database (0) | 2021.07.08 |
| 0707 Python Module (0) | 2021.07.07 |
| 0707 python 상속 (0) | 2021.07.07 |
| 0707 python class (0) | 2021.07.07 |
댓글