Bonsoir,

J'essaye de rendre une fonction directement iterable. Le code ci-dessous marche pour une instance mais pas pour une fonction ! Pourquoi ? Voyez vous comment faire ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
def iterbug():
    ipipo= lambda: iter((1,))
    class X:pass
    x= X()
    x.__iter__= ipipo
    iter(x) # ca marche
    def f():pass
    f.__iter__= ipipo
    iter(f) # TypeError: 'function' object is not iterable
Merci d'avance