18. [ํŒŒ์ด์ฌ] ๋ชจ๋“ˆ๊ณผ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ

2026. 3. 8. 12:12ยทPython & SQL/Python Basics
๐Ÿ’ก ๋ณธ ํฌ์ŠคํŒ…์€ ์ˆ˜์—… ๋‚ด์šฉ, ๊ต์žฌ, ChatGPT๋ฅผ ์ฐธ๊ณ ํ•˜์—ฌ ์ •๋ฆฌํ•œ ํ•™์Šต ๊ธฐ๋ก์ž…๋‹ˆ๋‹ค.
๊ธ€๊ณผ ๊ทธ๋ฆผ ๋“ฑ ๋ชจ๋“  ์ฝ˜ํ…์ธ ์˜ ์ •๋ฆฌ ๋ฐ ์ž‘์„ฑ์€ ๋ณธ ๋ธ”๋กœ๊ทธ์—์„œ ์ง์ ‘ ์ œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

 


Python ๊ธฐ์ดˆ๋ถ€ํ„ฐ Streamlit ๋ฐ์ดํ„ฐ ์‹œ๊ฐํ™”๊นŒ์ง€ ์ •๋ฆฌํ•˜๋Š” ํ•™์Šต ๊ธฐ๋ก์ž…๋‹ˆ๋‹ค.

์ด ๊ธ€์€ '18. [ํŒŒ์ด์ฌ] ๋ชจ๋“ˆ๊ณผ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ' ์ž…๋‹ˆ๋‹ค.

 


Python ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋‹ค ๋ณด๋ฉด ์ฝ”๋“œ์˜ ๊ธธ์ด๊ฐ€ ์ ์  ๊ธธ์–ด์ง€๊ณ , ์—ฌ๋Ÿฌ ๊ธฐ๋Šฅ์ด ํ•˜๋‚˜์˜ ํŒŒ์ผ์— ๋ชจ์ด๊ฒŒ ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค.

์ด๋Ÿด ๋•Œ ์ฝ”๋“œ๋ฅผ ๊ธฐ๋Šฅ๋ณ„๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๊ด€๋ฆฌํ•˜๋ฉด ๊ฐ€๋…์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜์„ฑ์ด ํฌ๊ฒŒ ํ–ฅ์ƒ๋œ๋‹ค.

Python์—์„œ๋Š” ์ด๋Ÿฌํ•œ ๊ตฌ์กฐํ™”๋ฅผ ์œ„ํ•ด ๋ชจ๋“ˆ(module) ๊ฐœ๋…์„ ์‚ฌ์šฉํ•œ๋‹ค.

 

์ด๋ฒˆ ๊ธ€์—์„œ๋Š” Python ํ”„๋กœ๊ทธ๋žจ์„ ๊ตฌ์กฐ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ๋ชจ๋“ˆ์˜ ๊ฐœ๋…๊ณผ __name__, __main__์„ ํ™œ์šฉํ•œ ๊ธฐ๋ณธ์ ์ธ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ๋ฅผ 

์ •๋ฆฌํ•ด๋ณธ๋‹ค.

 

 

๋ชจ๋“ˆ(Module)

๋ชจ๋“ˆ์€ Python ์ฝ”๋“œ๊ฐ€ ๋‹ด๊ธด ํ•˜๋‚˜์˜ ํŒŒ์ผ(.py) ์„ ์˜๋ฏธํ•œ๋‹ค.

์ฆ‰, Python ํŒŒ์ผ ์ž์ฒด๊ฐ€ ํ•˜๋‚˜์˜ ๋ชจ๋“ˆ์ด๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŒŒ์ผ์ด ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด๋ณด์ž.

# math_utils.py

def add(a, b):
    return a + b

def multiply(a, b):
    return a * b

์ด ํŒŒ์ผ์€ math_utils๋ผ๋Š” ๋ชจ๋“ˆ์ด ๋œ๋‹ค.

๋‹ค๋ฅธ ํŒŒ์ผ์—์„œ ์ด ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

import math_utils

print(math_utils.add(3, 5))
print(math_utils.multiply(3, 5))

์ด์ฒ˜๋Ÿผ ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•˜๋ฉด ์ฝ”๋“œ๋ฅผ ๊ธฐ๋Šฅ๋ณ„๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

 

 

import

๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” import ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ๋ฐฉ์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

import math_utils

 

์ด ๊ฒฝ์šฐ ๋ชจ๋“ˆ ์ด๋ฆ„์„ ํ†ตํ•ด ํ•จ์ˆ˜์— ์ ‘๊ทผํ•œ๋‹ค.

math_utils.add(3, 5)

 

ํŠน์ • ํ•จ์ˆ˜๋งŒ ๊ฐ€์ ธ์˜ฌ ์ˆ˜๋„ ์žˆ๋‹ค.

from math_utils import add

 

์ด ๊ฒฝ์šฐ ๋ชจ๋“ˆ ์ด๋ฆ„ ์—†์ด ๋ฐ”๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

add(3, 5)

 

 

๋ณ„์นญ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ๋‹ค.

import math_utils as mu

 

์‚ฌ์šฉ ์˜ˆ์‹œ

mu.add(3, 5)

์ด์ฒ˜๋Ÿผ import๋Š” ๋‹ค์–‘ํ•œ ๋ฐฉ์‹์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

 

 

name

Python ํŒŒ์ผ์—๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ __name__์ด๋ผ๋Š” ํŠน๋ณ„ํ•œ ๋ณ€์ˆ˜๊ฐ€ ์กด์žฌํ•œ๋‹ค.

์ด ๋ณ€์ˆ˜๋Š” ํ˜„์žฌ ํŒŒ์ผ์ด ์–ด๋–ป๊ฒŒ ์‹คํ–‰๋˜๋Š”์ง€๋ฅผ ์•Œ๋ ค์ค€๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ ์ฝ”๋“œ๋ฅผ ๋ณด์ž.

print(__name__)

 

ํŒŒ์ผ์„ ์ง์ ‘ ์‹คํ–‰ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ถœ๋ ฅ๋œ๋‹ค.

__main__

 

ํ•˜์ง€๋งŒ ๋‹ค๋ฅธ ํŒŒ์ผ์—์„œ import ํ•˜๋ฉด ๊ฒฐ๊ณผ๊ฐ€ ๋‹ฌ๋ผ์ง„๋‹ค.

๋ชจ๋“ˆ ์ด๋ฆ„

 

์ฆ‰ __name__์€ ํ˜„์žฌ ํŒŒ์ผ์˜ ์‹คํ–‰ ์ƒํƒœ๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค.

 

 

main

Python์—์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ตฌ์กฐ๋ฅผ ์ž์ฃผ ์‚ฌ์šฉํ•œ๋‹ค.

if __name__ == "__main__":
    print("program start")

์ด ์ฝ”๋“œ๋Š” ํ˜„์žฌ ํŒŒ์ผ์„ ์ง์ ‘ ์‹คํ–‰ํ–ˆ์„ ๋•Œ๋งŒ ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋˜๋„๋ก ํ•˜๋Š” ๊ตฌ์กฐ์ด๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ชจ๋“ˆ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.

def greet(name):
    print(f"Hello {name}")

if __name__ == "__main__":
    greet("Matt")

 

์ด ํŒŒ์ผ์„ ์ง์ ‘ ์‹คํ–‰ํ•˜๋ฉด ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋˜์ง€๋งŒ, ๋‹ค๋ฅธ ํŒŒ์ผ์—์„œ importํ•˜๋ฉด ํ•ด๋‹น ์ฝ”๋“œ๋Š” ์‹คํ–‰๋˜์ง€ ์•Š๋Š”๋‹ค.

์ด ๊ตฌ์กฐ๋Š” ๋ชจ๋“ˆ ์žฌ์‚ฌ์šฉ๊ณผ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ์— ๋งค์šฐ ์œ ์šฉํ•˜๋‹ค.

 

 

๊ฐ„๋‹จํ•œ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ

ํ”„๋กœ๊ทธ๋žจ์ด ์ปค์ง€๋ฉด ์—ฌ๋Ÿฌ ๋ชจ๋“ˆ์„ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋Š” ๊ตฌ์กฐ๊ฐ€ ๋œ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.

project/
โ”œโ”€ main.py
โ”œโ”€ math_utils.py
โ””โ”€ data_utils.py

์ด์ฒ˜๋Ÿผ ๊ธฐ๋Šฅ์„ ๋ชจ๋“ˆ๋กœ ๋‚˜๋ˆ„๋ฉด

  • ์ฝ”๋“œ ๊ด€๋ฆฌ๊ฐ€ ์‰ฌ์›Œ์ง€๊ณ 
  • ๊ธฐ๋Šฅ ์žฌ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋ฉฐ
  • ํ”„๋กœ๊ทธ๋žจ ๊ตฌ์กฐ๊ฐ€ ๋ช…ํ™•ํ•ด์ง„๋‹ค.



๋ชจ๋“ˆ ์‚ฌ์šฉ์˜ ์žฅ์ 

Python์—์„œ ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

  • ์ฝ”๋“œ ์žฌ์‚ฌ์šฉ
  • ๊ธฐ๋Šฅ๋ณ„ ์ฝ”๋“œ ๋ถ„๋ฆฌ
  • ์œ ์ง€๋ณด์ˆ˜ ์šฉ์ด
  • ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ ์ •๋ฆฌ

ํŠนํžˆ ํ”„๋กœ๊ทธ๋žจ์ด ์ปค์งˆ์ˆ˜๋ก ๋ชจ๋“ˆ ๊ตฌ์กฐ๋ฅผ ์ž˜ ์„ค๊ณ„ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ค.

 

 

์ •๋ฆฌ

Python์—์„œ ๋ชจ๋“ˆ์€ ์ฝ”๋“œ๋ฅผ ๊ธฐ๋Šฅ๋ณ„๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ๊ธฐ๋ณธ ๋‹จ์œ„์ด๋‹ค.

.py ํŒŒ์ผ ํ•˜๋‚˜๊ฐ€ ํ•˜๋‚˜์˜ ๋ชจ๋“ˆ์ด ๋˜๋ฉฐ import๋ฅผ ํ†ตํ•ด ๋‹ค๋ฅธ ํŒŒ์ผ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

๋˜ํ•œ __name__๊ณผ __main__ ๊ตฌ์กฐ๋ฅผ ํ™œ์šฉํ•˜๋ฉด ๋ชจ๋“ˆ ์žฌ์‚ฌ์šฉ๊ณผ ์‹คํ–‰ ์ฝ”๋“œ ๋ถ„๋ฆฌ๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.

ํ”„๋กœ์ ํŠธ ๊ทœ๋ชจ๊ฐ€ ์ปค์งˆ์ˆ˜๋ก ๋ชจ๋“ˆ์„ ํ™œ์šฉํ•œ ๊ตฌ์กฐ์ ์ธ ์ฝ”๋“œ ๊ด€๋ฆฌ๊ฐ€ ์ค‘์š”ํ•ด์ง„๋‹ค.

 

๋‹ค์Œ ๊ธ€์—์„œ๋Š” Python์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ •๋ ฌํ•˜๊ณ  ์ฒ˜๋ฆฌํ•  ๋•Œ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ์ •๋ ฌ ๊ธฐ์ˆ ๊ณผ ์œ ์šฉํ•œ ๋‚ด์žฅ ํ•จ์ˆ˜๋ฅผ ์‚ดํŽด๋ณธ๋‹ค.

 

 

'Python & SQL > Python Basics' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

20. [Streamlit] ์„ค์น˜๋ถ€ํ„ฐ ์ฒซ ํ™”๋ฉด๊นŒ์ง€  (0) 2026.03.08
19. [ํŒŒ์ด์ฌ] ์ •๋ ฌ ๊ธฐ์ˆ ๊ณผ ์œ ์šฉํ•œ ์œ ํ‹ธ ํ•จ์ˆ˜  (0) 2026.03.08
17. [ํŒŒ์ด์ฌ] ํด๋กœ์ €์™€ ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ  (2) 2026.03.08
16. [ํŒŒ์ด์ฌ] class methos vs static method  (2) 2026.03.08
15. [ํŒŒ์ด์ฌ] ์ •๋ณด์€๋‹‰๊ณผ ํด๋ž˜์Šค ๋‚ด๋ถ€ ๊ตฌ์กฐ  (2) 2026.03.08
'Python & SQL/Python Basics' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • 20. [Streamlit] ์„ค์น˜๋ถ€ํ„ฐ ์ฒซ ํ™”๋ฉด๊นŒ์ง€
  • 19. [ํŒŒ์ด์ฌ] ์ •๋ ฌ ๊ธฐ์ˆ ๊ณผ ์œ ์šฉํ•œ ์œ ํ‹ธ ํ•จ์ˆ˜
  • 17. [ํŒŒ์ด์ฌ] ํด๋กœ์ €์™€ ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ
  • 16. [ํŒŒ์ด์ฌ] class methos vs static method
J. Son
J. Son
Petit à petit l'oiseau fait son nid.
  • J. Son
    Steady Study Log
    J. Son
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (173) N
      • Python & SQL (63)
        • Python Basics (21)
        • Python Problems (23)
        • Python Practice (11)
        • MySQL (1)
        • Git & GitHub (7)
      • ML & DL (8) N
      • Projects (6) N
        • Project Portfolio (6) N
      • AI Camp (4)
        • Camp Reflection (4)
      • Concept Notes (6)
        • Statistics & Stata (4)
        • Mathematics (2)
      • Archive (85) N
        • Java (24)
        • R (1)
        • Languages (49)
        • Miscellaneous (11) N
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ๋ฐฉ๋ช…๋ก
  • ๋งํฌ

    • GitHub
    • WikiDocs_01
    • WikiDocs_02
  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    machine learning
    ์ ํ”„ํˆฌํŒŒ์ด์ฌ ์—ฐ์Šต๋ฌธ์ œ ํ’€์ด
    ํŒŒ์ด์ฌ ๋ฌธ์ œ
    ๋ณตํ•ฉ๊ณผ๊ฑฐ
    streamlit
    ๋งฅ git
    GIT
    ๋จธ์‹ ๋Ÿฌ๋‹
    MySQL
    ์ž๋ฐ”
    ์–ด๋ฆฐ์™•์ž ํ”„๋ž‘์Šค์–ด
    ๋ถˆ์–ด ๊ด€๊ณ„๋Œ€๋ช…์‚ฌ
    Stata
    Le Petit Prince
    Github
    ํŒŒ์ด์ฌ
    ํ”„๋กœ์ ํŠธ ์˜ค์ผ๋Ÿฌ
    ๋ถˆ์–ด ๊ณต๋ถ€
    ํŒŒ์ด์ฌ ํฌ๋กค๋ง
    ์ดˆ๋ณด์ž๋ฅผ ์œ„ํ•œ ํŒŒ์ด์ฌ 300์ œ
    passe compose
    ์–ด๋ฆฐ์™•์ž ๋ถˆ์–ด
    ํŒŒ์ด์ฌ streamlit
    share.streamlit.io
    ๊ฐ์ฒด
    Python
    ์ ํ”„ํˆฌํŒŒ์ด์ฌ ์—ฐ์Šต๋ฌธ์ œ
    ํ”„๋ž‘์Šค์–ด ๊ณต๋ถ€
    python streamlit
    python problem
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.6
J. Son
18. [ํŒŒ์ด์ฌ] ๋ชจ๋“ˆ๊ณผ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”