Re: Чого вам не вистачає в Пітоні? Ділимося власними костилями
Memoization with Function Decorators
def memoize(f):
    memo = {}
    print(locals())
    def helper(x):
        print('x=',x)
        if x not in memo:            
            memo[x] = f(x)
        return memo[x]
    return helper
    
def fib(n):
    if n == 0:
        return 0
    elif n == 1:
        return 1
    else:
        return fib(n-1) + fib(n-2)
fib = memoize(fib)
print(fib(2))результат:
Python 3.5.2 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
   
{'f': <function fib at 0x7fd181eea950>, 'memo': {}}
x= 2
x= 1
x= 0
1
=> None
   питання = звідки helper отримав 'x' ? ми ж нічого змінній "х" не присвоювали - отже її нема





 ну це я так. Зараз мені подобається Java, оскільки ця МП цілком ООП і тільки вивчаючи подібну мову можна з головою поринути у світ об'єктно орієнтованої реалізації
 ну це я так. Зараз мені подобається Java, оскільки ця МП цілком ООП і тільки вивчаючи подібну мову можна з головою поринути у світ об'єктно орієнтованої реалізації