function
μ¬μ©λ²
def ν¨μμ΄λ¦():
λ¬Έμ₯
κΈ°λ³Έμ μΈ ν¨μ
def print_3_times():
print("μλ
νμΈμ")
print("μλ
νμΈμ")
print("μλ
νμΈμ")
print_3_times()
ν€μλ λ§€κ°λ³μ
# κ°λ³ λ§€κ°λ³μκ° κΈ°λ³Έ λ§€κ°λ³μλ³΄λ€ μμ μ¬ λ
def print_n_times( *values, n=2):
for i in range(n):
for value in values:
print(value)
print()
print_n_times("μλ
νμΈμ", "μ¦κ±°μ΄", "νμ΄μ¬ νλ‘κ·Έλλ°", 3)
# κΈ°λ³Έ λ§€κ°λ³μκ° κ°λ³ λ§€κ°λ³μλ³΄λ€ μμ μ¬ λ (errorκ° λ°μ)
def print_n_times(n=2, *values):
for i in range(n):
for value in values:
print(value)
print()
print_n_times("μλ
νμΈμ", "μ¦κ±°μ΄", "νμ΄μ¬ νλ‘κ·Έλλ°")
ν€μλ λ§€κ° λ³μ
def print_n_times( *values, n=2):
for i in range(n):
for value in values:
print(value)
print()
print_n_times("μλ
νμΈμ", "μ¦κ±°μ΄", "νμ΄μ¬ νλ‘κ·Έλλ°", 3)
# μλ
νμΈμ
# μ¦κ±°μ΄
# νμ΄μ¬ νλ‘κ·Έλλ°
# 3
# => λ€μκ³Ό κ°μ΄ 3μ΄ μΆλ ₯λλ©°, λ¬Έμμ΄μ λλ²μ λ°λ³΅νλ€
def print_n_times(*values, n=2):
for i in range(n):
for value in values:
print(value)
print()
print_n_times("μλ
νμΈμ", "μ¦κ±°μ΄", "νμ΄μ¬ νλ‘κ·Έλλ°", n=3)
# μλ
νμΈμ
# μ¦κ±°μ΄
# νμ΄μ¬ νλ‘κ·Έλλ°
# => λ¬Έμμ΄μ΄ μΈλ² λ°λ³΅νλ€
κΈ°λ³Έ λ§€κ°λ³μ μ€μμ νμν κ°λ§ μ
λ ₯νκΈ°
# μ¬λ¬ ν¨μ νΈμΆ νν
def test(a, b=10, c=100):
print(a + b + c)
# 1) κΈ°λ³Έ νν
test(10, 20, 30)
# 2) ν€μλ λ§€κ°λ³μλ‘ λͺ¨λ λ§€κ°λ³μλ₯Ό μ§μ ν νν
test(a=10, b=100, c=200)
# 3) ν€μλ λ§€κ°λ³μλ‘ λͺ¨λ λ§€κ°λ³μλ₯Ό λ§κ΅¬μ‘μ΄λ‘ μ§μ ν νν
test(c=10, a=100, b=200)
# 4) ν€μλ λ§€κ°λ³μλ‘ μΌλΆ λ§€κ°λ³μλ§ μ§μ ν νν
test(10, c=200)
리ν΄
# μλ£ μμ΄ λ¦¬ν΄νκΈ°
def return_test():
print("A μμΉμ
λλ€.")
return # 리ν΄ν©λλ€.
print("B μμΉμ
λλ€.")
return_test() # A μμΉμ
λλ€.
# μλ£μ ν¨κ» 리ν΄νκΈ°
def return_test():
return 100
value = return_test()
print(value) # 100
# μ무κ²λ 리ν΄νμ§ μκΈ°
def return_test():
return
value = return_test()
print(value) # None
κΈ°λ³Έμ μΈ ν¨μμ νμ©
μ¬μ©λ²
def ν¨μ(λ§€κ°λ³μ):
λ³μ = μ΄κΉκ°
μ¬λ¬ κ°μ§ μ²λ¦¬
μ¬λ¬ κ°μ§ μ²λ¦¬
μ¬λ¬ κ°μ§ μ²λ¦¬
return λ³μ
λ²μ λ΄λΆμ μ μλ₯Ό λͺ¨λ λνλ ν¨μ
def sum_all(start, end):
output = 0
for i in range(start, end + 1):
output += i
return output
print("0 to 100:", sum_all(0, 100)) # 0 to 100: 5050
print("0 to 1000:", sum_all(0, 1000)) # 0 to 1000: 500500
print("50 to 100:", sum_all(50, 100)) # 50 to 100: 3825
print("500 to 1000:", sum_all(500, 1000)) # 500 to 1000: 375750
print("---------------------------------------")
κΈ°λ³Έ λ§€κ°λ³μμ ν€μλ λ§€κ°λ³μλ₯Ό νμ©ν΄ λ²μμ μ μλ₯Ό λνλ μ μ
def sum_all(start=0, end=100, step=1):
output = 0
for i in range(start, end + 1, step):
output += i
return output
print("A.", sum_all(0, 100, 10)) # A. 550
print("B.", sum_all(end=100)) # B. 5050
print("C.", sum_all(end=100, step=2)) # C. 2550
μ¬κ·ν¨μ
# λ°λ³΅λ¬ΈμΌλ‘ ν©ν λ¦¬μΌ κ΅¬νκΈ°
def factorial(n):
output = 1
for i in range(1, n + 1):
output *= i
return output
print("1!:", factorial(1))
print("2!:", factorial(2))
print("3!:", factorial(3))
print("4!:", factorial(4))
print("5!:", factorial(5))
# μ¬κ· ν¨μλ‘ ν©ν λ¦¬μΌ κ΅¬νκΈ°
def factorial(n):
# nμ΄ 0μ΄λΌλ©΄ 1μ 리ν΄
if n == 0:
return 1
# nμ΄ 0μ΄ μλλΌλ©΄ n * (n-1)!μ 리ν΄
else:
return n * factorial(n - 1)
print("1!:", factorial(1))
print("2!:", factorial(2))
print("3!:", factorial(3))
print("4!:", factorial(4))
print("5!:", factorial(5))
νΌλ³΄λμΉ μμ΄
nλ²μ§Έ μμ΄ = (n-1) λ²μ§Έ μμ΄ + (n-2) λ²μ§Έ μμ΄
# μ¬κ· ν¨μλ‘ κ΅¬νν νΌλ³΄λμΉ μμ΄(1)
def fibonacci(n):
if n == 1:
return 1
if n == 2:
return 1
else:
return fibonacci(n - 1) + fibonacci(n - 2)
print("fibonacci(1):", fibonacci(1))
print("fibonacci(2):", fibonacci(2))
print("fibonacci(3):", fibonacci(3))
print("fibonacci(4):", fibonacci(4))
print("fibonacci(5):", fibonacci(5))
# μ¬κ· ν¨μλ‘ κ΅¬νν νΌλ³΄λμΉ μμ΄(2)
counter = 0
def fibonacci(n):
print("fibonacci({})λ₯Ό ꡬν©λλ€.".format(n))
global counter # global λ³μμ΄λ¦ : ν¨μμ μΈλΆμ λ³μλ₯Ό μ°Έμ‘°νκΈ° μν΄μ μ¬μ©
counter += 1
if n == 1:
return 1
if n == 2:
return 1
else:
return fibonacci(n - 1) + fibonacci(n - 2)
fibonacci(10)
print("---")
print("fibonacci(10) κ³μ°μ νμ©λ λ§μ
νμλ {}λ²μ
λλ€.".format(counter))
# νΈλ¦¬ ννμμ κ°κ°μ μ§μ μ λ
Έλ, λ
Έλ μ€μ κ°μ₯ λ§μ§λ§ λ¨κ³μ λ
Έλλ₯Ό 리νλΌκ³ λΆλ₯Έλ€
λ©λͺ¨ν
λμ λ리λ₯Ό μ¬μ©ν΄μ νλ² κ³μ°ν κ°μ μ§μ νλ κ²μ λ©λͺ¨λΌκ³ νλ©°,
λ©λͺ¨νλ₯Ό μ¬μ©νλ©΄ μ€ν ν κ³§λ°λ‘ κ²°κ³Όλ₯Ό μΆλ ₯ν μ λλ‘ μλκ° λΉ¨λΌμ§λ€.
dictionary = { 1: 1, 2: 2 } def fibonacci(n): if n in dictionary: # λ©λͺ¨ λμ΄ μμΌλ©΄ λ©λͺ¨λ κ° λ¦¬ν΄ return dictionary[n] else: # λ©λͺ¨ λμ΄ μμ§ μμΌλ©΄ κ°μ κ΅¬ν¨ output = fibonacci(n - 1) + fibonacci(n - 2) dictionary[n] = output return output print("fibonacci(10):", fibonacci(10)) print("fibonacci(20):", fibonacci(20)) print("fibonacci(30):", fibonacci(30)) print("fibonacci(40):", fibonacci(40)) print("fibonacci(50):", fibonacci(50))
μ½λ μ μ§ λ³΄μ
# p νκ·Έλ‘ κ°μΈλ ν¨μ
def p(content):
# κΈ°μ‘΄ μ½λ μ£Όμ μ²λ¦¬
# return "<p>{}</p>".format(content)
return "<p class='content-line'>{}</p>".format(content)
print(p("μλ
νμΈμ"))
print(p("κ°λ¨ν HTML νκ·Έλ₯Ό λ§λλ μμ
λλ€."))
ν¨μ κ³ κΈ
νν : ν¨μμ ν¨κ» λ§μ΄ μ¬μ©λλ 리μ€νΈμ λΉμ·ν μλ£νμΌλ‘, 리μ€νΈμ λ€λ₯Έμ μ νλ² κ²°μ λλ©΄ μμλ₯Ό λ°κΏ μ μλ€λ κ² λλ€ : λ§€κ° λ³μλ‘ ν¨μλ₯Ό μ λ¬νκΈ° μν΄ ν¨μ ꡬ문μ μμ±νλ κ²μ΄ λ²κ±°λ‘κ³ , μ½λ κ³΅κ° λλΉλΌλ μκ°μ΄ λ€λ ν¨μλ₯Ό κ°λ¨νκ³ μ½κ² μ μΈνλ λ°©λ²
νν
# 리μ€νΈμ ννμ νΉμ΄ν μ¬μ©
[a, b] = [10, 20]
(c, d) = (10, 20)
print("a:", a) # a: 10
print("b:", b) # b: 20
print("c:", c) # c: 10
print("d:", d) # d: 20
# κ΄νΈκ° μλ νν
tuple_test = 10, 20, 30, 40
print("# κ΄νΈκ° μλ ννμ κ°κ³Ό μλ£ν μΆλ ₯")
print("tuple_test:", tuple_test) # tuple_test: (10, 20, 30, 40)
print("type(tuple_test):", type(tuple_test)) # type(tuple_test): <class 'tuple'>
print("-----------------------------")
a, b, c = 10, 20, 30
print("# κ΄νΈκ° μλ ννμ νμ©ν ν λΉ")
print("a:", a) # a: 10
print("b:", b) # b: 20
print("c:", c) # c: 30
# λ³μμ κ°μ κ΅ννλ νν
a, b = 10, 20
print("# κ΅ν μ κ°")
print("a:", a)
print("b:", b)
print("-----------------------------")
a, b = b, a
print("# κ΅ν ν κ°")
print("a:", a)
print("b:", b)
print("-----------------------------")
# μ¬λ¬ κ° κ° λ¦¬ν΄νκΈ°
def test():
return (10, 20)
a, b = test()
print("a:", a)
print("b:", b)
# ν¨μμ λ§€κ° λ³μλ‘ ν¨μ μ λ¬νκΈ°
# λ§€κ°λ³μλ‘ λ°μ ν¨μλ₯Ό 10λ² νΈμΆνλ ν¨μ
def call_10_times(func):
for i in range(10):
func()
def print_hello():
print("μλ
νμΈμ")
call_10_times(print_hello)
filter() ν¨μμ map() ν¨μ
ν¨μλ₯Ό λ§€κ°λ³μλ‘ μ λ¬νλ λνμ μΈ νμ€ν¨μ
map(ν¨μ, 리μ€νΈ)
filter(ν¨μ, 리μ€νΈ)
def power(item):
return item * item
def under_3(item):
return item < 3
list_input_a = [1, 2, 3, 4, 5]
# map() ν¨μλ₯Ό μ¬μ©ν©λλ€.
output_a = map(power, list_input_a)
print("# map() ν¨μμ μ€ν κ²°κ³Ό")
print("map(power, list_input_a):", output_a)
print("map(power, list_input_a):", list(output_a))
print("-----------------------------------------")
# filter() ν¨μλ₯Ό μ¬μ©ν©λλ€.
output_b = filter(under_3, list_input_a)
print("# filter() ν¨μμ μ€ν κ²°κ³Ό")
print("filter(under_3, list_input_a):", output_b)
print("filter(under_3, list_input_a):", list(output_b))
print("+========================================")
λλ€
lambda λ§€κ°λ³μ : 리ν΄κ°
# λλ€
power = lambda x: x * x
under_3 = lambda x: x < 3
list_input_a = [1, 2, 3, 4, 5]
output_a = map(power, list_input_a)
print("# map() ν¨μμ μ€ν κ²°κ³Ό")
print("map(power, list_input_a):", output_a)
# map(power, list_input_a): <map object at 0x000001DC96167208>
print("map(power, list_input_a):", list(output_a))
# map(power, list_input_a): [1, 4, 9, 16, 25]
print("-----------------------------------------")
output_b = filter(under_3, list_input_a)
print("# filter() ν¨μμ μ€ν κ²°κ³Ό")
print("filter(under_3, list_input_a):", output_b)
# filter(under_3, list_input_a): <filter object at 0x000001DC961660C8>
print("filter(under_3, list_input_a):", list(output_b))
# filter(under_3, list_input_a): [1, 2]
# μΈλΌμΈ λλ€
list_input_a = [1, 2, 3, 4, 5]
output_a = map(lambda x: x * x, list_input_a)
print("# map() ν¨μμ μ€ν κ²°κ³Ό")
print("map(power, list_input_a):", output_a)
print("map(power, list_input_a):", list(output_a))
print("-----------------------------------------")
output_b = filter(lambda x: x < 3, list_input_a)
print("# filter() ν¨μμ μ€ν κ²°κ³Ό")
print("filter(under_3, list_input_a):", output_b)
print("filter(under_3, list_input_a):", list(output_b))
Last updated
Was this helpful?