
ν©κΈκ°λ μ°ν΄κ° λλ¬μ΅λλ€.. κ·Έλμ λννκ² μ§λ΄λ€ λ€μ μ€ν°λλ‘ λμμμ΅λλ€..
(λ΄ μ°ν΄ ππ)
λ€μ μμ μ μ λ‘ λμμ€κΈΈ κΈ°μνλ©° κΈμ μμ±ν΄λ΄ λλ€.
μ΄λ² μ€ν°λμ λ²μλ μ λ²μ£Όμ κ°μ΄ νμ΄μ¬μ λλ€. λ€λ§ μ λ²λ³΄λ€ μ‘°κΈ λ μ¬ν λ΄μ©μ΄μ£ . νλ² λ΄μ©λ€μ μ λ¦¬ν΄ λ³΄κ² μ΅λλ€.
μ΄λ²μ νμ΅νλ ν¨μλ λ΄μ₯ ν¨μκ° μλλΌ μ¬μ©μ μ μ ν¨μ μ λλ€. μ¬μ©μκ° μ§μ ν¨μλ₯Ό λ§λ€μ΄ μ¬μ©νλ κ²μ΄μ£
def f(x):
do_something
...
y = ...
return y
ν¨μμ ꡬ쑰λ μμ κ°μ΅λλ€. μ°Έκ³ λ‘ ν¨μλ μμ ꡬλΆμ λ€μ¬μ°κΈ°λ‘ ν©λλ€. νμ΄μ¬μ λ€μ¬μ°κΈ°λ‘ μΉΈμ λλλ κ²½μ°κ° κ±°μ μ λΆλΌ λ΄λ λλ μμλμλκ² μ¬μ€μ νμμ λλ€. ν¨μ λν κ°μ²΄μ λλ€. ν¨μμ μ΄λ¦μ f, λ§€κ°λ³μλ xμ λλ€. κ·Έλ¦¬κ³ λ°ννλ κ°μ yμ λλ€. μ°¨κ·Όμ°¨κ·Ό μμλ΄ μλ€.
μμΉμΈμμ ν€μλ μΈμ, κΈ°λ³Έκ°μ΄ μ€μ λ λ§€κ°λ³μ
#μμΉμΈμ
def get_difference(a, b):
diff = a - b
return diff
#ν€μλ μΈμ
def show_data(weight, height, age):
print(weight)
print(height)
print(age)
show_data(age = 33, weight = 77, height = 177)
#κΈ°λ³Έκ°μ΄ μ€μ λ λ§€κ°λ³μ
def get_add(a, b, c = 0):
add = a + b + c
return add
ν΄λμ€λ κ°μ²΄μ§ν₯μΈμ΄λ₯Ό νλ²μ΄λΌλ μ¨λ΄€μ€λ©΄ μ κ²μ΄λ€. νμ΄μ¬λ κ°μ²΄μ§ν₯μΈμ΄ μ΄λ―λ‘ λΉμ°ν ν΄λμ€κ° μ°μΈλ€.
νμ΄μ¬μ μ¬μ€μ λͺ¨λ κ²μ΄ κ°μ²΄λΌ μκ°νλ©΄ λλ€. κ·Έ κ°μ²΄λ₯Ό μμ±νλ κ²μ΄ ν΄λμ€μ΄κ³ ν΄λμ€λ‘ κ°μ²΄λ₯Ό μμ±νλ κ²μ ꡬ체νλΌκ³ νλ€. κ·Έλ¦¬κ³ ν΄λμ€λ‘λΆν° μμ±λ κ°μ²΄λ ν΄λμ€μ μΈμ€ν΄μ€λΌ νλ€.
μ²μ μ νλ©΄ μ©μ΄κ° λ§μ ν·κ°λ¦΄μ μμ ν
μ§λ§ μ°λ€λ³΄λ©΄ κΈλ°© μ΅μν΄μ§ κ²μ΄λ€.
class StatCal():
data = [1, 2, 3]
def get_avg():
avg = sum(data)/len(data)
return avg
stat_cal = StatCal()print(stat_cal.data), print(stat_cal.get_avg())
μ¦ ν΄λμ€ λ΄λΆμ λ©μλλ₯Ό def get_avg(self): μ΄λ°μμΌλ‘ κ³ μ³μΌ νλ€μ΄κΈ°ν ν¨μ __init__
μ μμ λ¬λ¦¬ μλ‘ λ€λ₯Έ λ°μ΄ν°λ₯Ό μ¬μ©νλ μΈμ€ν΄μ€λ₯Ό λ§λ€μ΄ 보μ
class StatCal():
def __init__(self, name, data):
self.name = name
self.data = data
def get_avg(self):
avg = sum(self.data)/len(self.data)
return avg
length = StatCal("sepal", [1,2,3])
width = StatCal("petal", [2,3,4])
ν΄λμ€μ μμ
κΈ°μ‘΄μ ν΄λμ€μ μμ±κ³Ό λ©μλλ₯Ό μΆκ°νμ¬ μλ‘μ΄ ν΄λμ€λ₯Ό λ§λλ κ²μ΄λ€.
class Avg():
def __init__(self, data):
self.data = data
def get_avg(self):
avg = sum(self.data)/len(self.data)
return avg
class AvgTimesX(Avg):
def get_avg(self, x):
avg = sum(self.data)/len(self.data)
avg = avg*x
return avg
data = [1,2,3]
avg_x = AvgTimesX(data)
print(avg_x.get_avg(3))
6.0
μμ κ°λ¨ν μ½λλ₯Ό μ΄ν΄λ³΄λ©΄ AvgTimesXν΄λμ€λ Avgν΄λμ€λ₯Ό μμν κ²μ΄λ€.
λ§μ½ μ΄λ¦ aλ‘ μ΄λ€ 리μ€νΈ κ°μ²΄λ₯Ό κ°λ¦¬ν€κ³ bλ₯Ό aλ‘ μ μ νλ©΄ λ μ΄λ¦μ λμΌν 리μ€νΈ κ°μ²΄λ₯Ό κ°λ¦¬ν€λ―λ‘, aλ₯Ό ν΅ν΄ 리μ€νΈ κ°μ²΄μ μμλ₯Ό λ³κ²½νλ©΄ bκ° κ°λ¦¬ν€λ 리μ€νΈμ κ°μ²΄μμλ λ³κ²½λλ€κ³ νμλ€.
μ΄λ¬ν λ¬Έμ λ₯Ό νΌνκΈ° μν κ°λ¨ν λ°©λ²μΌλ‘ 리μ€νΈμ λ³΅μ¬ λ©μλλ₯Ό μ΄μ©νλ κ²μ΄ μλ€.
a = [1,2,3]
b = a.copy()
b[0] = "X"
print(b)
print(a)
['x',2,3][1,2,3]
μμ κ°μ΄ 볡μ¬λ₯Ό νλ©΄ bκ° κ°λ¦¬ν€λ κ°μ²΄μ aκ° κ°λ¦¬ν€λ κ°μ²΄κ° λ¬λΌμ Έ νμͺ½μ μμ ν΄λ λ€λ₯Έ νμͺ½μ΄ μμ λμ§ μλλ€.
λ€λ§ μ€μ²©λ¦¬μ€νΈμμλ λ³΅μ¬ λ©μλλ‘ λ¬Έμ κ° ν΄κ²°λμ§ μλλ€.
μμ κ°μ 볡μ¬λ μμ 볡μ¬λΌκ³ νλ€. μμ κ°μ²΄μ μμλ€κΉμ§ λͺ¨λ 볡μ¬νλ €λ©΄ μμ λ³΅μ¬ λμ κΉμ 볡μ¬λ₯Ό ν΄μΌνλ€.
κΉμ 볡μ¬λ copy λͺ¨λμ λΆλ¬μμ(import copy) copy.deepcopy(a)λ₯Ό ν΅ν΄ μ€μ ν μ μλ€.
μ΄μ νμ΄μ¬ λ¬Έλ²μ λ§λ¬΄λ¦¬ νμ΅λλ€(κ΅μ¬ μμΌλ‘λ). κ΅μ¬ λ΄μ©μ€ νμμ μ΄κ±°λ λμ€μ μ κΉ μ°Ύμλ΄λ λ μ λμ λ΄μ©λ€μ κ΅³μ΄ μμ±νμ§ μμμ΅λλ€.
λ€μμ£Ό μ€ν°λλ²μλ λνμ΄ κΈ°μ΄ μ λλ€. νμ΄μ¬ κΉμ§λ μ κ° ν΄λ³Έ μ μ΄ μμ΄ κ±°μ μκ³ μλ λ΄μ©μ΄μλλ° λνμ΄ λΆν°λ μμ μ²μμ΄λΌ νλ©΄μ λ¨Έλ¦¬κ° κΉ¨μ§ μλ μμ κ² κ°μ΅λλ€. λ€λ§ λνμ΄ κΉμ§λ μ½κ³ κ·Έ λ€μλΆν° μ΄λ €μ 보μ΄κΈ΄ νλκ΅°μ..
μμ±μΌ κΈ°μ€ λ€μλ μ΄ μμμΌ μ
λλ€.. λ€, μ€μ§ μμμΌλ©΄ μ’κ² κ΅°μ..
μ΄ κΈμ μ½μΌμ λΆλ€μ μΈμ μ½μΌμ
¨λμ§ λͺ¨λ₯΄κ² μ§λ§.. λ€λ€ ν루ν루 νλ΄μκΈΈ λ°λκ²μ! μκ°μ νλ¦
λλ€!
