์ƒˆ์†Œ์‹

๐Ÿ ํŒŒ์ด์ฌ (Python)/-- ํŒจํ‚ค์ง€ ๋ฐ ์™ธ๋ถ€ํŒŒ์ผ

ํŒŒ์ด์ฌ (python) if __name__ == "__main__" ๋ฌด์Šจ ๋œป ? ์–ด๋–ค ์˜๋ฏธ ?

  • -

์—ฌ๋Ÿฌ๊ฐ€์ง€ ์˜ˆ์ œ๋“ค์„ ๋ณด๋‹ค๋ณด๋ฉด if __name__ == "__main__" ๊ฐ€ ์ž์ฃผ ๋“ฑ์žฅํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒŒ ์–ด๋–ค ๊ธฐ๋Šฅ์„ ํ•˜๋Š”์ง€ , ์‹ค์ œ์ ์ธ ์‚ฌ์šฉ

์˜๋ฏธ๊ฐ€ ์–ด๋–ค๊ฒƒ์ธ์ง€ ์•Œ์•„๋ณด์•˜์Šต๋‹ˆ๋‹ค.

if __name__ == "__main__"๋ฅผ ๊ทธ๋Œ€๋กœ ํ•ด์„ํ•˜์ž๋ฉด 

" ๋งŒ์•ฝ ์ง€๊ธˆ ์ด ํŒŒ์ผ์„ ์ง์ ‘์‹คํ–‰ํ•œ๋‹ค๋ฉด " ์ž…๋‹ˆ๋‹ค. ์ง์ ‘์‹คํ–‰์˜ ๋ฐ˜๋Œ€๋ง์€ ์ž„ํฌํŠธ(import)ํ•˜์—ฌ ๊ฐ€์ ธ์™€ ์‹คํ–‰์ž…๋‹ˆ๋‹ค. (๋ชจ๋“ˆ๋กœ์„œ ์‚ฌ์šฉํ•œ๋‹ค๋Š” ์˜๋ฏธ) ๋ชจ๋“ˆ ๊ด€๋ จ ์ฐธ์กฐ -> https://infinitt.tistory.com/47 

 

ํŒŒ์ด์ฌ (python) - ๋ชจ๋“ˆ , ํŒจํ‚ค์ง€ ( module , package ) ์ƒ์„ฑ , import์™€ alias

*ํŒจํ‚ค์ง€ package ๊ธฐ๋Šฅ๋“ค์˜ ๋ฌถ์Œ์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ํŒŒ์ด์ฌ์„ ์ฒ˜์Œ ๋ฐฐ์šธ๋•Œ ์‚ฌ์šฉํ•˜๋Š” print, reverse , range ๋„ ํŒŒ์ด์ฌ์ด ์ œ๊ณตํ•˜๋Š” ํŒจํ‚ค์ง€์˜ ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค. (built-in ํ•จ์ˆ˜) ์‰ฝ๊ฒŒ ๋งํ•˜๋ฉด ํด๋” ๋ผ๊ณ  ๋ณด์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ํŒจ..

infinitt.tistory.com

 

 

 

*์˜ˆ์‹œ 

##APPLE.py

def abc() :
    print("ํ•จ์ˆ˜ ์‹คํ–‰")
    if __name__ == "__main__" : # ํ˜„์žฌ ์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ์ด ์‹คํ–‰๋˜๋Š” ์ƒํƒœ ํŒŒ์•…
        print("์Šคํฌ๋ฆฝํŠธ ๋‚ด์—์„œ ์‹คํ–‰")
        print(__name__)
    else : 
        print("์ž„ํฌํŠธ ํ•˜์—ฌ ์‹คํ–‰)")
        print(__name__)

*์Šคํฌ๋ฆฝํŠธ ๋‚ด์—์„œ ์ง์ ‘ ์‹คํ–‰ํ• ๋•Œ

APPLE.py ๋ผ๋Š” ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜์—ฌ, ์œ„ ์‚ฌ์ง„์ฒ˜๋Ÿผ abc๋ผ๋Š” ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.

abc๋ผ๋Š” ํ•จ์ˆ˜๋Š” if์™€ else ๋‘๊ฐ€์ง€ ๊ธฐ๋Šฅ์„ ํ•ฉ๋‹ˆ๋‹ค. ํ•ต์‹ฌ์€ print(__name__) ์ธ๋ฐ์š”, ์˜ค๋ฅธ์ชฝ ์œ„์˜ run ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๊ฒŒ๋˜๋ฉด 

 

(run๋ฒ„ํŠผ)

IF๋ฌธ์ด ์ถœ๋ ฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  print(__name__) ์€ __main__๋กœ ์ถœ๋ ฅ ๋˜์—ˆ๋„ค์š”.

*์™ธ๋ถ€์—์„œ import ์‹œ์ผœ ์‹คํ–‰ ํ• ๋•Œ

๋‘๋ฒˆ์งธ๋Š” ์™ธ๋ถ€์—์„œ import์‹œ์ผœ ์‹คํ–‰์ž…๋‹ˆ๋‹ค. ์ง์ ‘์‹คํ–‰๋•Œ IF๋ฌธ์ด์—ˆ์œผ๋‹ˆ, ์ž„ํฌํŠธ ํ›„ ์‹คํ–‰ ๋‹น์—ฐํžˆ else๋ฌธ์ด๊ฒ ์ฃ  ?

##์ž„ํฌํŠธ ํ•˜์—ฌ APPLE ๋ชจ๋“ˆ์˜ abcํ•จ์ˆ˜ ์‹คํ–‰์‹œํ‚ด

from APPLE import abc

abc()

 

Else๋ฌธ์ด ์ถœ๋ ฅ๋˜์—ˆ๊ณ , print(__name__)์€ APPLE๋กœ ์ถœ๋ ฅ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

Contents

ํฌ์ŠคํŒ… ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค

์ด ๊ธ€์ด ๋„์›€์ด ๋˜์—ˆ๋‹ค๋ฉด ๊ณต๊ฐ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.