티스토리 뷰
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
Python에서 작성한 파일을 모듈로 사용할것인가 아니면 스크립트로 사용할것인가에 대해서 위의 if __name__=="__main__": 으로서 구분을 지어줄수 있다
즉, test.py라는 파일을 직접실행한 경우 __name__에는 "__main__"이라는 값이 들어가게 되고
test.py라는 파일을 모듈로 사용하여 다른 python에서 import하였다면 __name__에는 test.py모듈에는 파일명이 들어가게 되므로 test라는 값이 들어가게 된다.
아래의 예를 보도록 하자
file1.py파일을 생성후 아래와같은 내용을 넣은후 실행을 해보았다.
print(__name__) if __name__=="__main__": print("im main") else: print("im module") |
실행결과
__main__ im main |
test.py파일을 생성후 아래와 같이 작성후 실행을 해보았다.
import file1 |
실행결과
file1 im module |
위의 예를 보면 file1.py을 test.py파일에서 import만 하여 사용했을때와 file1.py를 직접실행했을경우의 차이를 나타내고 있다.
즉, __name__변수는 현재 파일이 모듈로 사용되느냐, 메인으로 실행되느냐를 구분할수 있는 변수인 셈이다.
또한 위와같이 __name__=="__main__"와 조건식으로 if문을 사용하면 모듈로 사용될때와 메인으로 실행될때를 구분하여 python을 작성할수 있다
'Python' 카테고리의 다른 글
Python, 변수명 (0) | 2016.04.21 |
---|---|
Python, 소스코드 인코딩 (0) | 2016.04.21 |
Python, struct에서 사용되는c의 자료형과 python의 자료형비교 (0) | 2016.04.21 |
Python, for문 내에서 함수 사용시 함수의 변수선언의 차이점 (0) | 2016.04.21 |
Python, 한줄에 여러구문이 올때 [;],여러줄에 한구문 사용할때[\] (0) | 2016.04.21 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Java
- ManyToOne
- activebackground
- 상수
- onetomany
- disabledforeground
- 폼
- 리눅스
- Module
- tkinter command & bind [명령어묶기와 사건묶기] Python
- activeforeground
- Excel
- Python
- borderwidth
- FetchType
- 파이썬
- tkinter
- JPA
- Composite Key
- apache
- highlightbackground
- checkbutton
- vba
- IdClass
- Private
- indicatoron
- highlightthickness
- Linux
- command
- fetch join
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함