ich arbeite momentan an einem Projekt, durch das ich mit meinem ersten Python Skript konfrontiert werde.
Durch Erfahrungen in anderen Programmiersprachen viel mir Einstieg recht leicht, allerdings bin ich gerade auf ein Problem gestoßen.
test = backend.getHardwareInformation_hash(hostId = "hostId")
Diese Funktion liet in der python-opsi Library und gibt mir ein Dictionary Object zurück.
str(test.keys()) hat folgende Ausgabe:
Code: Alles auswählen
[u'DISK_PARTITION', u'COMPUTER_SYSTEM', u'VIDEO_CONTROLLER']
str(test[u'COMPUTER_SYSTEM']) hat dann folgende Ausgabe:
Code: Alles auswählen
{u'vendor': u'Dell Inc.', u'model': u'OptiPlex 780'}
Wenn ich test[u'COMPUTER_SYSTEM'][u'model'] verwende bekomme ich den Fehler:
List Indices must be integer, not unicode.
Ein bisschen recherchiert und herausgefunden, dass ich Lists nur mit dem Zahlen Index ansprechen kann. Ok, nachgezählt, Wert steht an 6. Stelle (oben ist die Ausgabe nur etwas gekürzt, zwecks Lesbarkeit)
List Index out of range
Bisschen rumgetestet, mal IndexNr. 1 genommen:
List Index out of range -.-
Vielleicht könnt ihr mir ja ein bisschen auf die Sprünge helfen, ich komme gerade nicht wirklich weiter.
Vielen Dank schonmal
Gruß Shakreo
Edit sagt: Eben nochmal probiert weil ich ganz vergessen hatte, dass der erste Index ja die 0 ist -.-
Wenn ich mir das ausgeben lasse, erhalte ich wieder die selbe Ausgabe wie bei str(test[u'COMPUTER_SYSTEM'])