Метод .next()
на итераторах был переименован в Python 3. Вместо этого используйте .__next__()
.
Код
fmap = defaultdict(count(1).__next__)
Демо
fmap["a"]
# 1
fmap["b"]
# 2
Заметьте, defaultdict
нужен аргумент, который можно вызывать, что-то, что будет действовать как функция, поэтому скобки удаляются, например, __next__
.