[Python]__name__

2022. 10. 19. 22:42

 

 

__name__이라는 변수는 파이썬에서 해당 모듈의 이름이 저장됨   
"실행하는 코드"에서는 __main__값이 들어감

 

 

* test.py

print('test.py __name__ : ', __name__)

test.py __name__ :  __main__

 

* start.py

import test

print('start.py __name__ : ', __name__)

test.py __name__ :  test
start.py __name__ :  __main__

 

파이썬에서 모듈을 import하면 해당 모듈의 전역코드가 실행됨


* test2.py

def add_one(data):
    return data + 1

def add_two(data):
    return data + 2

# 파일 자체로 실행할 때는 실행되도록 하고, 모듈로써 실행할 땐 안되게 하기 위해 이렇게 작성하기도 함
if __name__ == '__main__':  # 모듈이 아니라, 해당 코드 직접 실행시만 아래 코드가 실행됨
    print(add_one(10))
    print(add_two(10))

11
12

 

* start2.py

import test2

print('start.py __name__ : ', __name__)
# 이 땐 test2에 있는 코드는 __name__이 모듈로써 실행이 돼서 __name__에 test2가 들어가 있어서 코드 실행 안됨

print('start.py __name__ : ', test2.add_one(10))
# 모듈의 있는 기능을 사용하려면 위와 같이 사용해야됨

start.py __name__ :  __main__
start.py __name__ :  11

'Python > 파이썬 초급' 카테고리의 다른 글

[Python] 가변인자  (0) 2022.11.14
[Python] for-else 문  (0) 2022.11.11
[Python] 튜플(팩킹, 언팩킹)  (0) 2022.11.11
[Python] 딕셔러니 (dictionary)  (0) 2022.11.11
[Python] print (escape, rawstring, multiline)  (1) 2022.11.11