반응형
__init__ 이란?
  • __init__.py이 포함된 폴더는 파이썬 패키지의 일부라고 알려주는 역할
  • 파이썬 3.2 이하 버전은 __init__.py이 없으면 패키지로 익식 안됨
__init__ 파일 활용, import 사용하기
  • 패키지를 import하면 기본적으로 패키지 안에 있는 내용은 import되지 않음
  • __init__ 파일을 활용해 패키지안 내용도 함께 import할 수 있음

지난번 포스팅에서 test폴더에 빈 __init__.py 파일와 area.py 파일을 만들었습니다.

이것을 활용해보겠습니다.

 

2021.07.11 - [프로그래밍/Python] - 파이썬(python) 패키지(package) 만들고 import 하기

 

 

 

test/__init__.py 파일에 패키지와 함께 import하고 싶은 내용을 적어주시면 됩니다.

이제 test 패키지를 import하면 area 모듈이 import 될 수 있습니다.

 

Test1.py

import test

print(test.area.circle(3))

Test1.py 결과

 

그리고 모듈의 함수들을 직접 import 할 수 있음

 

test/__init__.py

from test.area import circle, square

 

Test1.py

import area

print(test.circle(3))
print(test.square(2))

Test1.py 결과

 

__init__ 파일에서 변수정의
  • 특정상수를 패키지 안에서 한 번만 정의하고싶으면 init파일에 정의해주면 됨
  • 여러 모듈에서 필요한 것들을 init파일에 정의하면 편함

 

test/__init__.py

PI = 3.14

 

test/area.py

from test import PI

 

 

 

반응형
복사했습니다!