Generator μ λλ μ΄ν°
μ λλ μ΄ν°λ κ°λ¨ν νλ‘κ·Έλ¨λ³΄λ€ μκ°μ μ΄λ―Έμ§ λΆμ μΈκ³΅ μ κ²½λ§μΈ CNN(convolution nural network) λͺ¨λΈμ μ±λ₯μ λμ΄κΈ° μν λ°©λ² μ€ νλμΈ λ°μ΄ν° μ¦μμ λ§μ΄ μ°μΈλ€.
νμ΄μ¬ μ λλ μ΄ν°λ μνμ€λ₯Ό μμ±νλ κ°μ²΄μ΄λ€. κΈ°μ‘΄μ μ¬μ©νλ λ°©μμ²λΌ
μ 체 μνμ€λ₯Ό ν λ²μ λ©λͺ¨λ¦¬μ μμ±νκ³ μ λ ¬ν νμ μμ΄
, μ μ¬μ μΌλ‘ μμ£Ό ν° μνμ€λ₯Ό μ λλ μ΄ν°λ‘ μνν μ μλ€.
μ λλ μ΄ν°λ μ°λ¦¬κ° μ μ μ¬μ©νλ range()
ν¨μλ μ λλ μ΄ν°μ μ’
λ₯μ€ νλμ΄λ€.
range()
μ€ νλλΌκ³ νλ©΄ κ°μ΄ μ‘νλ μ¬λμ΄ μκ³ μ‘νμ§ μλ μ¬λμ΄ μμν
λ° ν λ² κ°μ΄ λ°λΌκ°λ³΄μ.
1μμ 100κΉμ§ λνλ μμ
>>> sum(range(1, 101))
5050
μ λ리μν°λ₯Ό μνν λ λ§λ€, λ§μ§λ§μΌλ‘ νΈμΆλ κ°μ κΈ°μ΅νκ³ κ·Έ λ€μ κ°μ λ°ννλ κ²μ΄ range()
μ νΉμ±μΈλ° μΌλ° ν¨μμ λ¬λ¦¬ μ λλ μ΄ν°λ μ΄μ νΈμΆμ λν λ©λͺ¨λ¦¬κ° μλ€λ μ μ΄ μλ€.
μ΄ μ¬μ€μ μ§κ³ μ΄μ μ κΉμ μ λλ μ΄ν°λ₯Ό κ²½νν΄λ³΄μ.
yield
Generatorλ₯Ό μκΈ° μν΄μλ yield
ν€μλλ₯Ό μμμΌ νλλ°, yieldμ ν¨μλ₯Ό μ’
κ²°νμ§ μκ³ κ°μ κ³μ λ°νν λ μ¬μ©λλ€.
μ΄ λ§μ μ’ λ νμ΄μ λ§ νμλ©΄
λ°λ³΅μ μΌλ‘ κ°μ return νκ³ μΆμ λ μ¬μ©νλ€.
def genFunc():
yield 1
yield 2
yield 3
print(list(genFunc()))
>>> [1, 2, 3]
yield λ¬Έμ΄ ν¨μ μμμ μ΄λ€ λμμ μννλ κ²μ μ λλ μ΄ν°λΌκ³ νλ€.
generator
generator : yieldκ° ν¬ν¨λ ν¨μ λΌκ³ κ°λ¨νκ² μ΄μΌκΈ° ν μ μλ€.
μ λλ μ΄ν°μ λν κΉμ λ΄μ©μ μΆνμ CNN μ κ²½λ§μ λν΄ νμ΅ν λ λ κΉκ² λ΄λ³΄μ!
λ°μ»€λ μ΄ν°
λ°μ»€λ μ΄ν°λ νλμ ν¨μλ₯Ό μ·¨ν΄μ λ λ€λ₯Έ ν¨μλ₯Ό λ°ννλ ν¨μμ΄λ€.
μ°λ¦¬κ° λ°μ»€λ μ΄ν°λ₯Ό μ¬μ©νκ² λλ€λ©΄ μμ€μ½λλ₯Ό λ°κΎΈμ§ μκ³ , μ¬μ©νκ³ μλ ν¨μλ₯Ό μμ νμ¬, ν¨μμ μ λ¬λ μΈμ, λλ²κΉ μ ν μ μκ² λλ€.
λ§μ½ μ°λ¦¬κ° 맀κ°λ³μ aμ bλ₯Ό λν΄μ£Όλ ν¨μκ° μλ€κ³ ν΄λ³΄μ.
def adding(a, b):
return a + b
μ΄μ μ΄ ν¨μμ λν μ 보λ₯Ό κ°μκΈ° μ»κ³ μΆμ λκ° μλ€.
μλ₯Ό λ€μ΄ ν¨μ μ΄λ¦μ΄λΌλμ§, 맀κ°λ³μλ‘ μ΄λ€ κ°μ΄ λ€μ΄κ°λμ§κ° μκ³ μΆμ λ λ°μ»€λ μ΄ν°λ₯Ό μ¬μ©νλ€.
λ°μ»€λ μ΄ν°
def proove_it(func):
do_func(*args):
print('Running function name is : ', func.__name__)
print('arguments is : ', args)
result = func(*args)
print('Result: ', result)
return result
return do_func
λ°μ»€λ μ΄ν°λ₯Ό μμ±νμλ€.
λ°μ»€λ μ΄ν°μλ Running function nameμ λν μ 보μ argumentsμ λν μ 보, λ§μ§λ§μΌλ‘ result κ²°κ³Όλ₯Ό μΆλ ₯μμΌμ€λ€.
κΈ°μ‘΄ ν¨μ adding
μμλ λ¨μ§ resultλ§ μΆλ ₯μμΌ°λ€λ©΄ proove_it
λ°μ»€λ μ΄ν°μμλ λ€μν μ 보λ₯Ό ν¬ν¨μν¬ μ μλ€.
λ°μ»€λ μ΄ν° μ¬μ© λ°©λ²
λ°μ»€λ μ΄ν°λ₯Ό μ¬μ©νλ λ°©λ²μλ λ κ°μ§ λ°©λ²μ΄ μλ€.
- μλμΌλ‘ μ¬μ©νλ λ°©λ²
μλμΌλ‘ μ¬μ©νλ λ°©λ²μ λ°μ»€λ μ΄ν° μ΄λ¦μ μΈμλ‘ ν¨μλ₯Ό μ λ¬νλ€.
def info_it(func):
def new_function(*args):
print('Running function', func.__name__)
print('Positional arguments:', args)
result = func(*args)
print('Result: ', result)
return result
return new_function
def adding(a, b):
return a + b
Manual_use = info_it(add_ints)
Manual_use(3, 4)
-
@decorator_name
μΌλ‘ ν¨μ μμ μΆκ°μν€λ λ°©λ²
ν¨μ μμ μ΄λ Έν μ΄μ κ³Ό κ°μ λ°©μμΌλ‘ μΆκ°νλ€.def info_it(func): def new_function(*args): print('Running function', func.__name__) print('Positional arguments:', args) result = func(*args) print('Result: ', result) return result return new_function @info_it def add_ints(a, b): return a + b add_ints(3, 4)
λν λ°μ»€λ μ΄ν°λ λ€μ€μΌλ‘ μ μ©ν μ μλ€.
'π€·πΌββοΈ Etc... > - C, C++, Python, Android' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
Python κ³ κΈ: κ°μ²΄μ ν΄λμ€(1) μ λ¬ΈνκΈ° (0) | 2019.12.08 |
---|---|
Python μμΈλ₯Ό λ€λ€λ³΄μ. (0) | 2019.12.07 |
Python λ€μν ν¨μ κΈ°λ² : Inner Function, Closure, Lambda λ΄μ₯ν¨μ, ν΄λ‘μ , λλ€ κ²½ννκΈ°. (0) | 2019.12.07 |
Python νμ΄μ¬μμμ ν¨μ (0) | 2019.12.07 |
Python ν¨μ(Function)μ μ¬μ©λ²κ³Ό λΆλ₯ (0) | 2019.12.07 |
λκΈ