Python์€ ์–ธ์–ด์ด๊ธฐ์— ๋‚ด์žฅํ•˜๋Š” ๊ธฐ๋Šฅ๋“ค์ด ๋Œ€๋ถ€๋ถ„์˜ ํ”„๋กœ๊ทธ๋ž˜๋จธ์—๊ฒŒ ํ•„์š”ํ•œ ํ•„์ˆ˜์ ์ธ ๊ฒƒ๋“ค์„ ์ œ๊ณตํ•˜๊ณ  ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ํŠน์ • ๋ถ„์•ผ์—์„œ ํ•„์ˆ˜์ ์œผ๋กœ ํ•„์š”๋กœ ํ•˜๋Š” ๊ธฐ๋Šฅ์€, ๋ถ„์•ผ์— ์ œํ•œ์ ์ด๊ธฐ์— Python ์–ธ์–ด์—์„œ ๊ธฐ๋ณธ ๋‚ด์žฅํ•˜๊ธฐ๊ฐ€ ์–ด๋ ต๋‹ค. ์ด๋Ÿฌํ•œ ์ด์œ ๋กœ ์ˆ˜๋งŽ์€ ํ”„๋กœ๊ทธ๋ž˜๋จธ๋“ค์€ ๋ณธ์ธ์ด ํ’€๊ณ ์ž ํ•˜๋Š” ๋ฌธ์ œ์—์„œ ์ฃผ์š”ํ•œ ๊ธฐ๋Šฅ์„ ์ง์ ‘ ๋งŒ๋“ค๊ณ  ์„œ๋กœ ๊ณต์œ ํ•˜๋Š” ์ ‘๊ทผ์„ ํ•˜๊ฒŒ ๋œ๋‹ค. ์ด๋ ‡๊ฒŒ ๋ชจ๋“ˆ์€ ํ”„๋กœ๊ทธ๋ž˜๋จธ๋“ค์ด ์ง์ ‘ ์œ ์šฉํ•œ ํ•จ์ˆ˜ ๋“ฑ์„ ์ž‘์„ฑํ•˜์—ฌ, ๋‹ค๋ฅธ ์‚ฌ๋žŒ ํ˜น์€ ๋ณธ์ธ์˜ ํ”„๋กœ๊ทธ๋žจ ๊ฐœ๋ฐœ์‹œ ํ™œ์šฉํ•˜๊ณ ์ž ํ•˜๋Š” ์ผ์ข…์˜ ๋ณ„๋„ ํŒŒ์ผ์ด๋‹ค. ๋ชจ๋“ˆ์˜ ํƒ€์ž…์„ ์ณ๋ณด๋ฉด, module์ด๋ผ๊ณ  ๋œฌ๋‹ค.

import math
 
type(math)
>>> module

๋ชจ๋“ˆ์•ˆ์˜ ํ•จ์ˆ˜ ํ˜ธ์ถœํ•˜๊ธฐ

math.factorial(3)
>>> 6

์ด๋ ‡๊ฒŒ ์–ด๋–ค ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•˜๋Š”์ง€, ์“ฐ๊ณ  ํ•จ์ˆ˜๋ช…์„ ๊ฐ™์ด ์จ์ค€๋‹ค. ๋ชจ๋“ˆ์ „์ฒด๋ฅผ ๋ถˆ๋Ÿฌ์˜ค์ง€ ์•Š๊ณ , ๋ชจ๋“ˆ์•ˆ์˜ ํ•ด๋‹น ํ•จ์ˆ˜๋งŒ์„ ๋ถˆ๋Ÿฌ์˜ค๊ณ  ์‹ถ์„ ๋•Œ๋Š”,

from math import factorial
 
factorial(3)
>>> 6

์ด๋ ‡๊ฒŒ ์จ์ฃผ๋ฉด ๋œ๋‹ค.

๋ชจ๋“ˆ์„ ๋ถˆ๋Ÿฌ์˜ค๋Š” ๋ฐฉ๋ฒ•

๊ฐ™์€ ๋””๋ ‰ํ† ๋ฆฌ์— ์ด๋Ÿฐ ํŒŒ์ผ์„ ์ž‘์„ฑํ–ˆ๋‹ค๊ณ  ํ•˜์ž.

#filename : SampleModule.py
def convert_to_celsius(fahrenheit):
    return (fahrenheit - 32) * 5/9

๋‹ค๋ฅธ python ํŒŒ์ผ์— ์ด ํŒŒ์ผ์„ ๊ฐ€์ ธ๋‹ค๊ฐ€ ์“ฐ๊ณ  ์‹ถ์œผ๋ฉด,

import SampleModule
 
SampleModule.convert_to_celsius(212)

์•ž์— ๋ชจ๋“ˆ์ด๋ฆ„์„ ์“ฐ๊ธฐ ์‹ซ์œผ๋ฉด,

from SampleModule import convert_to_celsius
 
convert_to_celsius(212)

ํ˜น์€ ๋ชจ๋“ˆ์•ˆ์— ์žˆ๋Š” ๋ชจ๋“  ํ•จ์ˆ˜๋ฅผ ๋ชจ๋“ˆ์ด๋ฆ„ ์—†์ด ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์œผ๋ฉด,

from SampleModule import *
 
convert_to_celsius(212)

๋„ˆ๋ฌด ๋ชจ๋“ˆ์ด๋ฆ„์ด ๊ธธ๋ฉด, ์ค„์—ฌ์„œ ์‚ฌ์šฉํ•˜์ž.

import SampleModule as SM
 
SM.convert_to_celsius(212)