Dies ist ein Code-Schnipsel für einen Protokollparser, an dem ich gerade arbeite. Der Protokollparser ist für ein Blade-Chassis ausgelegt und enthält mehrere Blade-Server.Iterieren durch eine Liste von Objekten zum Zuweisen eines Klassenattributs
Ich erhalte die folgende Fehlermeldung von der for-Schleife in blade_populate():
„erwartete Typ keine Integral bekommt“
Was den richtigen Weg wäre durch dieses Objekt iterieren Liste, damit ich später Python beginnen kann, Firmware, wie den iDRAC zu füllen?
def blade_create():
blades= []
for servers in range(blade_count()):
blades.append(servers)
return blades
blades = blade_create()
# Parse log to obtain FW revisions for blades
def blade_populate():
for blade in range(blades):
drac = log.readline()
Ist die 'return'-Anweisung in Ihrer ersten Funktion innerhalb der Schleife wirklich eingerückt? Das scheint nicht das zu sein, was du willst. Wenn Sie es rückgängig machen, werden Sie immer eine Liste zurückgeben, auch wenn 'blade_count()' '' 'zurückgibt. Aber Sie könnten stattdessen '' range (blade_count()) '' stattdessen zurückgeben, anstatt eine Liste selbst mit einer Schleife zu erstellen. – Blckknght
Das war es, und mein Fehler wurde gelöscht. Ich habe mich geärgert. Danke für den Anruf! EDIT: Ich kann nicht Kredit für eine Antwort geben, aus irgendeinem Grund kann es wegen meines Status sein. – Dylan
Sie können es nicht akzeptieren, weil es ein Kommentar ist (ich war mir nicht sicher, ob es ein Tippfehler war, der den Code auf Stack Overflow oder ein echtes Problem kopiert hat). Ich habe es unten in eine Antwort erweitert. – Blckknght