TypeError: Das Objekt 'generator' kann nicht aufgerufen werden

8

Ich habe einen Generator wie folgt definiert:

%Vor%

Und es funktioniert, indem Sie es mit

aufrufen %Vor%

erzeugt:

%Vor%

welche die richtigen Zahlen sind.

Aber wenn ich es so nenne:

%Vor%

wobei somefun() definiert ist als:

%Vor%

Ich bekomme diese Fehlermeldung:

%Vor%

Was habe ich falsch verstanden?

    
Prof. Falken 22.08.2012, 13:53
quelle

1 Antwort

13

Sie müssen Ihren Generator nicht aufrufen, entfernen Sie die Klammern () .

Sie werden wahrscheinlich durch die Tatsache verwirrt, dass Sie denselben Namen für die Variable innerhalb der Funktion als den Namen des Generators verwenden; Folgendes wird auch funktionieren:

%Vor%

Ein an die Funktion somefun übergebener Parameter wird dann an die lokale Variable lengen statt an lengths gebunden, um zu verdeutlichen, dass diese lokale Variable nicht mit der von Ihnen an anderer Stelle definierten Funktion lengths() identisch ist .

    
Martijn Pieters 22.08.2012, 13:55
quelle

Tags und Links