# attribute must be initialized myfunc.counter = 0
В качестве альтернативы, если вы не хотите настраивать переменную вне функции, вы можете использовать hasattr(), чтобы избежать AttributeError исключения:
defmyfunc(): ifnothasattr(myfunc, "counter"): myfunc.counter = 0# it doesn't exist yet, so initialize it myfunc.counter += 1
В любом случае статические переменные встречаются довольно редко, и вам следует найти для этой переменной место получше, скорее всего, внутри класса.