Что такое идиоматический способ создания бесконечного итератора из функции? Например
from itertools import islice
import random
rand_characters = to_iterator( random.randint(0,256) )
print ' '.join( islice( rand_characters, 100))
будет производить 100 случайных чисел