모듈을 만드는 법을 알면 직접 모듈을 만들 수 있는 것은 물론이고 다른 사람이 만든 모듈을 분석할 수도 있다.
PI = 3.141592
def number_input():
output = input('숫자 입력 > ')
return float(output)
def get_circumference(radius):
return 2 * PI * radius
def get_circle_area(radius):
return PI * radius * radius
import module_test as test
radius = test.number_input()
print('원 둘레 :', test.get_circumference(radius))
print('원 면적 :', test.get_circle_area(radius))
숫자 입력 > 3 원 둘레 : 18.849552000000003 원 면적 : 28.274328000000004
- name=="main"
다른 사람들이 만든 파이썬 코드들을 보면 __name__ == "__main__"이라는 코드를 많이 볼 수 있다. 많은 파이썬 개발자들이 이유도 모르고 그냥 사용하는 경우가 있는데, 이 의미가 무엇인지 자세하게 살펴보겠다.
name
파이썬 코드 내부에서는 __name__라는 변수를 사용할 수 있습니다. __name__이라는 변수에 어떤 값이 들어 있는지 확인해 보겠다.
print(__name__)
프로그래밍 언어에서는 프로그램의 진입점을 "엔트리 포인트"(entry poing) 또는 "메인"(main)이라고 부른다. 그리고 이러한 엔트리 포인트 또는 메인 내부에서의 __name__의 값은 문자열'__main__' 다.
circle.py
PI = 3.141592
def number_input():
output = input('숫자 입력 > ')
return float(output)
def get_circumference(radius):
return 2 * PI * radius
def get_circle_area(radius):
return PI * radius * radius
print('circle.py에서 __name__ :', __name__)
if __name__ == '__main__':
n = number_input()
area = get_circle_area(n)
print('원의 면적은 :', area)
start.py
import circle as cir
print('start.py에서 __name__ :', __name__)
if __name__ == '__main__':
radius = cir.number_input()
print('원 둘레 : ', cir.get_circumference(radius))
print('원 면적 : ', cir.get_circle_area(radius))
=⇒ circle.py 를 실행했을때 ‘name’은 main 이였다. start.py에서 circle을 임포트해서 가져와서 실행하면 circle.py name은 circle이고 start.py name 이 main 이 된다. 결론은 내가 모듈을 하나 만들어 놓으면 남이 내가 만든걸 쓸때 내가 만들어 놓은 것 밑에 지워야 하는 코드를 지울 필요 없이 (main 일때만 실행하니까) 그대로 사용하면 된다.
모듈을 만드는 법을 알면 직접 모듈을 만들 수 있는 것은 물론이고 다른 사람이 만든 모듈을 분석할 수도 있다.
PI = 3.141592
def number_input():
output = input('숫자 입력 > ')
return float(output)
def get_circumference(radius):
return 2 * PI * radius
def get_circle_area(radius):
return PI * radius * radius
import module_test as test
radius = test.number_input()
print('원 둘레 :', test.get_circumference(radius))
print('원 면적 :', test.get_circle_area(radius))
숫자 입력 > 3 원 둘레 : 18.849552000000003 원 면적 : 28.274328000000004
- name=="main"
다른 사람들이 만든 파이썬 코드들을 보면 __name__ == "__main__"이라는 코드를 많이 볼 수 있다. 많은 파이썬 개발자들이 이유도 모르고 그냥 사용하는 경우가 있는데, 이 의미가 무엇인지 자세하게 살펴보겠다.
name
파이썬 코드 내부에서는 __name__라는 변수를 사용할 수 있습니다. __name__이라는 변수에 어떤 값이 들어 있는지 확인해 보겠다.
print(__name__)
프로그래밍 언어에서는 프로그램의 진입점을 "엔트리 포인트"(entry poing) 또는 "메인"(main)이라고 부른다. 그리고 이러한 엔트리 포인트 또는 메인 내부에서의 __name__의 값은 문자열'__main__' 다.
circle.py
PI = 3.141592
def number_input():
output = input('숫자 입력 > ')
return float(output)
def get_circumference(radius):
return 2 * PI * radius
def get_circle_area(radius):
return PI * radius * radius
print('circle.py에서 __name__ :', __name__)
if __name__ == '__main__':
n = number_input()
area = get_circle_area(n)
print('원의 면적은 :', area)
start.py
import circle as cir
print('start.py에서 __name__ :', __name__)
if __name__ == '__main__':
radius = cir.number_input()
print('원 둘레 : ', cir.get_circumference(radius))
print('원 면적 : ', cir.get_circle_area(radius))
=⇒ circle.py 를 실행했을때 ‘name’은 main 이였다. start.py에서 circle을 임포트해서 가져와서 실행하면 circle.py name은 circle이고 start.py name 이 main 이 된다. 결론은 내가 모듈을 하나 만들어 놓으면 남이 내가 만든걸 쓸때 내가 만들어 놓은 것 밑에 지워야 하는 코드를 지울 필요 없이 (main 일때만 실행하니까) 그대로 사용하면 된다.
'빅데이터 분석가 양성과정 > Python' 카테고리의 다른 글
데이터 시각화 기초(1) (3) | 2024.07.05 |
---|---|
Ch08 클래스 (0) | 2024.07.05 |
Ch07-2 모듈 / 외부 모듈 (1) | 2024.07.05 |
Ch07-1 모듈 / 표준 모듈 (0) | 2024.07.05 |
Ch06-2 예외 처리 / 예외 고급 (1) | 2024.07.05 |