#======================================================================#
파일명 : \file\package\init.py
all =['package2','package1'] # 사용할 클래스 명 명시.
#'from package import * ' 를 사용하기 위함.
#======================================================================#
파일명 : \file\package\package1.py
class firstPackage:
def detail(self):
print("[firstPackage]")
if name == "main":
print("firstPackage 모듈을 직점실행")
print("이 문장은 모듈을 직접 실행할 때만 실행된다.")
pack1 = firstPackage()
pack1.detail();
else:
print("firstPackage 외부에서 실행")
#======================================================================#
파일명 : \file\package\package2.py
class secondPackage:
def detail(self):
print("[secondPackage]")
if name == "main":
print("secondPackage 모듈을 직점실행")
print("이 문장은 모듈을 직접 실행할 때만 실행된다.")
pack1 = secondPackage()
pack1.detail();
else:
print("secondPackage 외부에서 실행")
#======================================================================#
파일명 : \file\practice_package.py
#import package.package1 # 패키지만 가능한 참조 형태
#pack1 = package.package1.firstPackage()
#pack1.detail();
####################################################
#위 아래 같은 내용임.
####################################################
#from package.package1 import firstPackage
#pack1 =firstPackage()
#pack1.detail();
from package import * # init.py에 명시 된 부분만 노출.
pack2 = package2.secondPackage()
pack2.detail();
pack1 = package1.firstPackage()
pack1.detail();
import inspect
import random
print(inspect.getfile(random))
print(inspect.getfile(package2))
#=============================== output s====================================#
PS C:\Users\jaeeu\Desktop\pythonWorkspace> & C:/Python311/python.exe c:/Users/jaeeu/Desktop/pythonWorkspace/file/practice_package.py
secondPackage 외부에서 실행
firstPackage 외부에서 실행
[secondPackage][firstPackage]
C:\Python311\Lib\random.py
c:\Users\jaeeu\Desktop\pythonWorkspace\file\package\package2.py
#=============================== output e====================================#