Форум сайта python.su
Если нужно в блоке изменить глобальную переменную, нужно использовать инструкцию global.Ага, и засорять глобальное пространство имен;)
Офлайн
ZANспасибо!
Офлайн
На мой взгляд, в данном случае просто напрашивается применение генераторов:
def counter(start): curr = start while 1: curr += 1 yield curr f1 = counter(4) print f1 #<generator object at 0x00BF96C0> print f1.next() #5 print f1.next() #6
def counter2(start): return counter(start).next f2 = counter2(3) print f2 #<method-wrapper 'next' of generator object at 0x00BF9850> print f2() #4 print f2() #5
Отредактировано (Июнь 16, 2008 15:11:27)
Офлайн