inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자

패키지, 모듈 위치

모듈직접 실행에서 질문

280

데싸화이팅

작성한 질문수 2

0

class ThailandPackage:
    def detail(self):
        print("[태국 패키지 3박 5일] 방콕, 파타야 여행 (야시장 투어) 50만원")
        
if __name__ == "__main__": #만약 name이 main이면
    print("Thailand 모듈을 직접 실행")
    print("이 문장은 모듈을 직접 실행할 때만 실행돼요")
    trip_to = ThailandPackage()
    trip_to.detail()

#만약 파일을 직접 갖다가 쓸 때는 진행된다.
else:
    print("Thailand 외부에서 모듈 호출")

이 부분에서 if 문을 보시면 "__main__"이랑 같을 때 실행되도록 하였는데 저 if문이 정확히 의미하는 바가 무엇인지 알고 싶습니다.

"__main__" 뜻이 무엇인지

"__name__"의 뜻이 무엇인지

python

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴이에요. “main“은 파이썬에서 모듈을 직접 실행할 때, 해당 모듈의 name 변수에 할당되는 값이에요. 모듈은 다른 모듈에서 import 되어 사용될 수도 있지만, 직접 실행될 수도 있어요.

만약 모듈이 직접 실행되면, name 변수의 값은 “main“이 됩니다. 이렇게 조건문을 사용하여 “main“과 “name“이 같은지 비교하고, 같을 때만 해당 조건문 안의 코드가 실행되도록 할 수 있어요.

예를 들어, 위의 코드에서는 if 문을 사용하여 모듈이 직접 실행될 때만 “Thailand 모듈을 직접 실행”과 “이 문장은 모듈을 직접 실행할 때만 실행돼요”를 출력하도록 했어요. 이렇게 모듈의 직접 실행 여부를 확인할 수 있고, 이를 활용하여 모듈을 테스트하거나 주요 코드를 실행할 수 있게 되요.

따라서, 위의 코드에서 if name == “main”: 조건문은 모듈이 직접 실행되었는지 아니면 다른 모듈에서 import 되어 사용되었는지 확인하는 용도로 사용되는 겁니다. 이를 통해 모듈을 직접 실행할 때만 원하는 코드가 실행되도록 할 수 있어요.

quiz 8 오류 문제

0

74

1

str() 작성 위치

0

56

1

아나콘다

0

62

1

윈도우 설치 도와주세요

0

75

1

std_weight함수에서weight만return가능한가요?

0

69

1

오른쪽위 실행버튼을 누르면 터미널에 에러가 뜨고 컨트롤+F5를 누르면 에러가 안뜹니다.

0

37

1

설치해서 시작하는데 문제가 있습니다.

0

70

1

함수 입력할 때 설명 툴팁 나오게 하려면 어떻게 하나요?

0

109

1

2장 환경설정 문의

0

77

1

스타크래프트 프로젝트

0

74

1

python 파일명.py 입력시 Python 출력

0

135

1

로드맵 질문있습니다!

0

90

2

오류

0

75

1

질문 있습니다.

0

78

1

블로그에 학습한 내용을 정리해도 괜찮을까요?

0

174

1

#퀴즈 3의 5번 질문

0

72

1

print("ㅋ"*5) 에 대한 결과가 도출되지 않습니다

0

81

1

가변인자의 위치가 중요한가요?

0

81

1

vscode옛날 버전 설치

0

225

1

글자색상이 선생님처럼 안나옵니다

0

187

1

슬프네

0

156

1

quiz 6번 관련 문의입니다.

0

131

1

퀴즈#3에 대해서 이렇게 작성해도 되나요?

0

196

1

피드백 부탁드립니다

0

93

1