ウィキペディアによるとリストを参照すればいいらしいので。
def make_counter(n):
    c = []
    c.append(n)
    def counter():
        l = c.pop()
        l += 1
        c.append(l)
        return l
    return counter
ctr1 = make_counter(5)
ctr2 = make_counter(3)
print "ctr1: ", ctr1()
print "ctr1: ", ctr1()
print "ctr1: ", ctr1()
print "ctr2: ", ctr2()
print "ctr2: ", ctr2()
print "ctr1: ", ctr1()
さて実行
$ ./make_counter.py 
ctr1:  6
ctr1:  7
ctr1:  8
ctr2:  4
ctr2:  5
ctr1:  9
おーできた。でもこれだったらクラスのほうが分かりやすいなぁ。
class Counter:
    def __init__(self,num):
        self.c = int(num)
    def count(self):
        self.c += 1
        return self.c
LEGBルールってなんか分かりにくいな。単なる慣れなのか?