area.py (모듈)
PI = 3.14
def circle(radius):
return PI * radius ** 2
def square(length):
return length * length
import 로 모듈 속 기능들을 이용모듈.함수() 로 호출
import area
print(area.circle(2))
print(area.square(3))
print(area.PI)
# 12.56
# 9
# 3.14
함수() 로 호출from area import circle, square
print(circle(2))
print(square(3))
# 12.56
# 9
함수() 로 호출from area import *
print(circle(2))
print(square(3))
print(PI)
# 12.56
# 9
# 3.4
import area as ar
print(ar.circle(2))
print(ar.square(3))
print(ar.PI)
# 12.56
# 9
# 3.14
from area import circle as cr, square as sq
print(cr(2))
print(sq(3))
# 12.56
# 9
import area
print(dir())
print(dir(area))
# 현재 스크립트, 실행파일에 정의된 이름들 출력
# 모듈 area속 정의된 이름들 출력
list이기에 append를 이용해 원하는 검색 경로 추가 가능
import sys
print(sys.path)
# ['D:\\PyCharm Community Edition 2021.1.1\\11111111', 'D:\\PyCharm Community Edition 2021.1.1', 'C:\\Users\\User\\AppData\\Local\\Programs\\Python\\Python39\\python39.zip', 'C:\\Users\\User\\AppData\\Local\\Programs\\Python\\Python39\\DLLs', 'C:\\Users\\User\\AppData\\Local\\Programs\\Python\\Python39\\lib', 'C:\\Users\\User\\AppData\\Local\\Programs\\Python\\Python39', 'C:\\Users\\User\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages']
import 하면 __name__은 모듈 이름으로 설정area.py
print(__name__)
# __main__
run.py
import area
print(__name__)
# area
PI = 3.14
def circle(radius):
return PI * radius ** 2
def square(length):
return length * length
print(circle(2) == 12.56)
print(square(3) == 9)
# True
# True
import area
print(area.circle(2))
print(area.square(3))
# True
# True
# 12.56
# 9
import 모듈에 모든 코드를 실행해 의도와 다른 출력값을 얻을 수 있다.
파일이 직접 실행될 때만 실행하고 싶은 코드
if __name__ == '__main__' 이라는 조건문 안에 넣어주면 됨
area.py
PI = 3.14
def circle(radius):
return PI * radius ** 2
def square(length):
return length * length
if __name__ == '__main__':
print(circle(2) == 12.56)
print(square(3) == 9)
# True
# True
run.py
import area
print(area.circle(2))
print(area.square(3))
# 12.56
# 9