λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
Language/Python

[Python]파이썬 μ‚¬μš©μž μ •μ˜ ν•¨μˆ˜: μ½”λ“œ ꡬ쑰화와 μž¬μ‚¬μš©μ„± κ°•ν™”

by YJ Dev 2024. 4. 11.
728x90
λ°˜μ‘ν˜•
SMALL

python μ‚¬μš©μž μ •μ˜ ν•¨μˆ˜λž€ ν”„λ‘œκ·Έλž˜λ¨Έκ°€ 직접 μ •μ˜ν•˜μ—¬ λ§Œλ“  ν•¨μˆ˜λ₯Ό λ§ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ ν•¨μˆ˜λ“€μ€ ν”„λ‘œκ·Έλž¨μ„ 더 λͺ¨λ“ˆν™” ν•˜κ³  μž¬μ‚¬μš© κ°€λŠ₯ν•˜λ„λ‘ ν•΄μ€λ‹ˆλ‹€. μ‚¬μš©μž μ •μ˜ ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•˜λ©΄ 반볡적인 μž‘μ—…μ„ κ°„μ†Œν™”ν•˜κ³  μ½”λ“œμ˜ 쀑볡을 쀄일 수 μžˆμŠ΅λ‹ˆλ‹€.

파이썬 μ‚¬μš©μž μ •μ˜ ν•¨μˆ˜


1. ν•¨μˆ˜ μš©μ–΄ μ •λ¦¬πŸ•΅οΈ‍♀️

  • ν•¨μˆ˜ 호좜: ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•˜λŠ” 것
  • 맀개 λ³€μˆ˜: ν•¨μˆ˜λ₯Ό ν˜ΈμΆœν•  λ•Œ κ΄„ν˜Έ 내뢀에 λ„£λŠ” μ—¬λŸ¬κ°€μ§€ 자료
  • 인수: ν•¨μˆ˜λ₯Ό ν˜ΈμΆœν•  λ•Œ ν•¨μˆ˜μ— μ „λ‹¬λ˜λŠ” κ°’, ν•¨μˆ˜ 호좜 μ‹œ μ‹€μ œλ‘œ μ „λ‹¬λ˜λŠ” κ°’
  • λ°˜ν™˜ κ°’ (return) : ν•¨μˆ˜κ°€ μˆ˜ν–‰ν•œ μž‘μ—…μ˜ κ²°κ³Ό, ν•¨μˆ˜κ°€ 싀행을 μ™„λ£Œν•œ ν›„ λ°˜ν™˜λ˜λŠ” κ°’

ν•¨μˆ˜μ™€ κ΄€λ ¨λœ μš©μ–΄λ₯Ό μš”λ¦¬λ₯Ό λ§Œλ“œλŠ” 과정에 λΉ„κ΅ν•΄μ„œ 생각해 λ³΄κ² μŠ΅λ‹ˆλ‹€. μš”λ¦¬λ₯Ό ν•˜κΈ° μœ„ν•΄ λ ˆμ‹œν”Όμ— 적힌 단계에 따라 μš”λ¦¬λ₯Ό λ§Œλ“­λ‹ˆλ‹€.λ ˆμ‹œν”Όμ— 적힌 λͺ©λ‘μ„ μ½μŠ΅λ‹ˆλ‹€. λ ˆμ‹œν”Όμ—λŠ” 각 μš”λ¦¬μ— ν•„μš”ν•œ μž¬λ£Œλ“€μ΄ λ‚˜μ—΄λ˜μ–΄μžˆμŠ΅λ‹ˆλ‹€. μš”λ¦¬λ₯Ό μ‚¬μš©ν•˜κΈ° μœ„ν•΄ ν•„μš”ν•œ μ‹€μ œ 재료λ₯Ό 냉μž₯κ³ λ‚˜ μ£Όλ°©μ—μ„œ μ°ΎμŠ΅λ‹ˆλ‹€. λ ˆμ‹œν”Όμ—μ„œ μš”κ΅¬ν•˜λŠ” μž¬λ£Œλ“€μ„ λͺ¨λ‘ μ°Ύμ•„ μ‚¬μš©ν•©λ‹ˆλ‹€. μš”λ¦¬κ°€ μ™„μ„±λ˜λ©΄ 결과물을 μ ‘μ‹œμ— λ‹΄μ•„μ€λ‹ˆλ‹€.

μ—¬κΈ°μ„œ μš”λ¦¬λ₯Ό ν•˜λŠ” 과정을 ν•¨μˆ˜ 호좜, λ ˆμ‹œν”Όμ— 적힌 재료 λͺ©λ‘μ€ λ§€κ°œλ³€μˆ˜, λ ˆμ‹œν”Όμ—μ„œ μš”κ΅¬ν•˜λŠ” μž¬λ£ŒλŠ” 인수, μš”λ¦¬μ˜ 결과물은 λ°˜ν™˜κ°’μ΄ λ©λ‹ˆλ‹€.

이해가 λ˜μ…¨λ‚˜μš”? κ·Έλ ‡λ‹€λ©΄ μ΄λ²ˆμ—λŠ” 파이썬 μ‚¬μš©μž μ •μ˜ ν•¨μˆ˜ μž‘μ„±λ°©λ²•μ„ μ˜ˆμ œμ™€ ν•¨κ»˜ μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€.


2. μ‚¬μš©μž μ •μ˜ ν•¨μˆ˜πŸ‘©‍πŸ’»

파이썬 μ‚¬μš©μž μ •μ˜ ν•¨μˆ˜λ₯Ό μž‘μ„±ν•  λ•ŒλŠ” 일반적으둜 λ‹€μŒ λ„€ 단계λ₯Ό κ³ λ €ν•˜λ©΄ λ©λ‹ˆλ‹€.

1. κΈ°λŠ₯ μ •μ˜ : ν•¨μˆ˜κ°€ μˆ˜ν–‰ν•  μž‘μ—…μ„ λͺ…ν™•ν•˜κ²Œ μ •μ˜ν•©λ‹ˆλ‹€.

2. 맀개 λ³€μˆ˜ μ •μ˜ : ν•¨μˆ˜κ°€ ν•„μš”λ‘œ ν•˜λŠ” μž…λ ₯값을 λ§€κ°œλ³€μˆ˜λ‘œ μ •μ˜ν•©λ‹ˆλ‹€.

3. ν•¨μˆ˜ λ³Έλ¬Έ κ΅¬ν˜„ : ν•¨μˆ˜κ°€ μˆ˜ν–‰ν•  μž‘μ—…μ„ μ½”λ“œλ‘œ κ΅¬ν˜„ν•©λ‹ˆλ‹€.

4. λ°˜ν™˜κ°’ 지정 : ν•„μš”ν•œ 경우 κ²°κ³Όλ₯Ό λ°˜ν™˜ν•˜λ„λ‘ μ§€μ •ν•©λ‹ˆλ‹€.

νŒŒμ΄μ¬μ—μ„œ μ‚¬μš©μž μ •μ˜ ν•¨μˆ˜λŠ” 주둜 λ‹€μŒκ³Ό 같은 λ„€ 가지 κ²½μš°μ— μ‚¬μš©λ©λ‹ˆλ‹€.

1. λ§€κ°œλ³€μˆ˜, λ°˜ν™˜κ°’μ΄ λͺ¨λ‘ μ—†λŠ” 경우

2. λ§€κ°œλ³€μˆ˜λ§Œ μžˆλŠ” 경우

3. λ°˜ν™˜κ°’λ§Œ μžˆλŠ” 경우

4. λ§€κ°œλ³€μˆ˜, λ°˜ν™˜κ°’μ΄ λͺ¨λ‘ μžˆλŠ” ν•¨μˆ˜

이λ₯Ό κΈ°μ€€μœΌλ‘œ μ˜ˆμ œμ™€ ν•¨κ»˜ μžμ„Ένžˆ μ‚΄νŽ΄λ³΄λ„λ‘ ν•˜κ² μŠ΅λ‹ˆλ‹€.

1. λ§€κ°œλ³€μˆ˜, λ°˜ν™˜κ°’μ΄ λͺ¨λ‘ μ—†λŠ” 경우

κ°€μž₯ κ°„λ‹¨ν•œ ν•¨μˆ˜μ΄λ©°, ν•¨μˆ˜κ°€ νŠΉμ • μž‘μ—…μ„ μˆ˜ν–‰ν•˜κ³  κ·Έ κ²°κ³Όλ₯Ό λ°˜ν™˜ν•  ν•„μš”κ°€ 없을 λ•Œ μ‚¬μš©λ©λ‹ˆλ‹€.

ν˜•μ‹

def ν•¨μˆ˜μ΄λ¦„():

μˆ˜ν–‰ν•  μ½”λ“œ

ν•¨μˆ˜μ΄λ¦„()

def hello():    # ν•¨μˆ˜ μ •μ˜
    print('Hello, World!')
hello() # Hello, World! ν•¨μˆ˜ 호좜


2. λ§€κ°œλ³€μˆ˜λ§Œ μžˆλŠ” 경우

ν•¨μˆ˜κ°€ μ‹€ν–‰λ˜κΈ° μœ„ν•΄μ„œ ν•„μš”ν•œ μž…λ ₯값을 λ°›μ•„ μ²˜λ¦¬ν•˜λŠ” κ²½μš°μ— μ‚¬μš©λ©λ‹ˆλ‹€.

ν˜•μ‹

def ν•¨μˆ˜μ΄λ¦„(λ§€κ°œλ³€μˆ˜, λ§€κ°œλ³€μˆ˜2):
μˆ˜ν–‰ν•  μ½”λ“œ

ν•¨μˆ˜μ΄λ¦„ (인수1, 인수2)

def add(a, b):  # ν•¨μˆ˜ μ •μ˜
    print(a + b)    
n1 = int(input()  
n2 = int(input()  
add(n1, n2)  	  # ν•¨μˆ˜ 호좜


μ„Έ 번째 경우λ₯Ό μ•Œμ•„λ³΄κΈ° 전에 λ¨Όμ € return에 λŒ€ν•΄ μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€.

파이썬 μ‚¬μš©μž μ •μ˜ ν•¨μˆ˜μ—μ„œ return은 ν•¨μˆ˜μ˜ μ‹€ν–‰ κ²°κ³Όλ₯Ό λ°˜ν™˜ν•˜λŠ” 역할을 ν•©λ‹ˆλ‹€.;

ν•¨μˆ˜ λ‚΄λΆ€μ—μ„œ return ν‚€μ›Œλ“œλ₯Ό μ‚¬μš©ν•˜λ©΄ ν•΄λ‹Ή ν•¨μˆ˜λ₯Ό ν˜ΈμΆœν•œ 곳으둜 값을 λ°˜ν™˜ν•˜κ³  ν•¨μˆ˜μ˜ 싀행을 μ’…λ£Œν•©λ‹ˆλ‹€.


3. λ°˜ν™˜κ°’λ§Œ μžˆλŠ” 경우

ν•¨μˆ˜κ°€ μ–΄λ–€ μž‘μ—…μ„ μˆ˜ν–‰ν•œ ν›„ κ·Έ κ²°κ³Όλ₯Ό λ°˜ν™˜ν•  λ•Œ μ‚¬μš©λ©λ‹ˆλ‹€.

ν˜•μ‹
def ν•¨μˆ˜μ΄λ¦„():

μˆ˜ν–‰ν•  μ½”λ“œμƒλž΅ κ°€λŠ₯

return λ°˜ν™˜κ°’

κ²°κ³Όλ³€μˆ˜ = ν•¨μˆ˜μ΄λ¦„()

def Greetings(): # ν•¨μˆ˜ μ •μ˜
    return 'Hello~'
x = Greetings() # ν•¨μˆ˜ 호좜
print(x) # Hello~


4. λ§€κ°œλ³€μˆ˜, λ°˜ν™˜κ°’μ΄ λͺ¨λ‘ μžˆλŠ” ν•¨μˆ˜

ν•¨μˆ˜κ°€ νŠΉμ •ν•œ μž…λ ₯값을 λ°›μ•„ μ²˜λ¦¬ν•˜κ³  κ·Έ κ²°κ³Όλ₯Ό λ°˜ν™˜ν•˜λŠ” κ²½μš°μ— μ‚¬μš©λ©λ‹ˆλ‹€.

ν˜•μ‹
def ν•¨μˆ˜μ΄λ¦„(λ§€κ°œλ³€μˆ˜, λ§€κ°œλ³€μˆ˜2):
μˆ˜ν–‰ν•  μ½”λ“œμƒλž΅ κ°€λŠ₯
return λ°˜ν™˜κ°’

κ²°κ³Όλ³€μˆ˜ = ν•¨μˆ˜μ΄λ¦„(인수1, 인수2)

def plus(a, b): # ν•¨μˆ˜ μ •μ˜
    return a + b
n1 = plus(1, 2) # ν•¨μˆ˜ 호좜
print(n1)       # 3


μ΄λ ‡κ²Œ 각각의 κ²½μš°λŠ” ν•¨μˆ˜κ°€ μˆ˜ν–‰ν•˜λŠ” μž‘μ—…κ³Ό 그에 ν•„μš”ν•œ μž…λ ₯κ°’, λ°˜ν™˜κ°’μ˜ 쑴재 여뢀에 따라 λ‹€λ₯΄κ²Œ μ‚¬μš©λ©λ‹ˆλ‹€.

ν•¨μˆ˜λ₯Ό μ •μ˜ν•  λ•ŒλŠ” ν•΄λ‹Ή ν•¨μˆ˜κ°€ μ–΄λ–€ μž‘μ—…μ„ μˆ˜ν–‰ν•˜κ³  μ–΄λ–€ ν˜•νƒœμ˜ μž…λ ₯κ³Ό 좜λ ₯이 ν•„μš”ν•œμ§€λ₯Ό κ³ λ €ν•΄ μ μ ˆν•œ ν˜•νƒœμ˜ ν•¨μˆ˜λ₯Ό 섀계해야 ν•©λ‹ˆλ‹€.


3. 핡심 λ‚΄μš©πŸ‘€

파이썬 μš©μ–΄
파이썬 μ‚¬μš©μž μ •μ˜ ν•¨μˆ˜

728x90
λ°˜μ‘ν˜•
LIST