nonlocal или func_name. в замыканиях

Вариант 1 и 2 для замыкания. Допустим ли в Python вариант 1 и есть ли в нем какие-либо недостатки или преимущества перед 2?

from functools import wraps

def repeated(count=3):
    repeated.call_count = 0               # ВАРИАНТ 1
    call_count = 0                        # ВАРИАНТ 2
    def decorator(func):
        @wraps(func)
        def wrapper(*args, **kwargs):
            repeated.call_count += 1      # 1
            nonlocal call_count           # 2
            call_count += 1               # 2
            # ...

Ответы (0 шт):