티스토리 뷰
파이썬에서는 모든 파일을 실행할 수 있음, 파일을 실행하면 파일에 있는 모든 코드가 처음부터 끝까지 실행됨, 하지만 ava나 C, C++같은 언어들은 그렇지 않음
java나 C, C++같은 언어들에서는 어떤 파일을 실행하기보다는 파일 안에 있는 'main()'이라는 함수를 실행함, main 함수는 말 그대로 '주요'함수로서 프로그램을 작동시키는 코드를 담고 있음
예를 들어 java의 'Hello World!' 프로그램은 아래와 같이 생겼음
HelloWorld.java
class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
프로그램이 더 복잡해지면 main함수 안에서 다른 함수들을 호출해야함
파이썬에서도 이 프로그래밍 패턴을 사용할 수 있음, 파일에서 어떤 프로그램을 작동시키는 부분을 그냥 main이라는 함수 안에 넣어주는 것임, 예를 들어 우리의 area파일과 run 파일에 main 함수를 추가해 주면 아래와 같이 바뀜
area.py
PI = 3.14
#원의 면적을 구해 주는 함수
def circle(radius):
return PI * radius * radius
#정사각형의 면적을 구해 주는 함수
def square(length):
return length * length
#함수들을 테스팅 하는 메인 함수
def main():
#circle 함수 테스트
print(circle(2) == 12.56)
print(circle(5) == 78.4)
#square 함수 테스트
print(sqaure(2) == 4)
print(square(5) == 25)
if __name__ == '__main__':
main()
run.py
import area
#면적 계산기 프로그램
def main:
x = float(input('원의 지름을 입력해 주세요: '))
print('지름이 {}인 원의 면적은 {}입니다.\n'.format(x, area.circle(x)))
y = float(input('정사각형의 변의 길이를 입력해 주세요: '))
print('변의 길이가 {}인 정사각형의 면적은 {}입니다.'.format(y, area.square(y)))
if __name__ == '__main__':
main()
if __name__ == '__main__'안에 있는 코드는 파일이 직접 실행될 때만 실행되니까 그 안에서 main함수를 호출해 주면 됨
이렇게 main함수를 사용하면 파일에서 프로그램을 작동시키는 코드가 어디 있는지 쉽게 알 수 있기 때문에 코드의 가독성이 올라감, 코드의 흐름과 의도를 더 쉽게 이해할 수 있음, 따라서 파이썬에서는 main함수가 요구되지 않더라도 if __name__ == '__main__'과 main()을 사용하는 것을 추천함
'파이썬 > 모듈' 카테고리의 다른 글
__init__ 파일 정리 (0) | 2021.04.02 |
---|---|
패키지 정리 (0) | 2021.04.02 |
스크립트 vs 모듈 (0) | 2021.04.01 |
파일 경로 (0) | 2021.03.31 |
유용한 스탠다드 모듈 (0) | 2021.03.31 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Programming
- plot
- 클래스
- R
- 함수
- 데이터분석
- 그래프
- 영어회화
- 스마트워치
- 코드
- 모듈
- python
- 경제신문
- 자바
- 코테
- 프로그래머스
- 영어
- 코딩테스트
- 프로그래밍
- 머신러닝
- 금리
- 파이썬
- sql
- 코딩
- 보안
- 개발
- mysql
- 경제
- SW
- 데이터
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
글 보관함