Annahme Ich versuche, meine Fortschrittsbalken int Werte von jeder Schleife zu füttern aber ich erhalte eine Fehlermeldung erhalten, die besagt, dass ich nicht int Werte bin Eingabe:Python: Fortschrittsbalken nicht int
TypeError: 'int' object does not support item assignment
Was ich sind tut, ist:
- Abrufen der Gesamtlänge des Arrays
- Dividing Länge des Fortschrittsbalkens mit Arraylänge
- Jede Schleife des (value/Prozentsatz für jedes Element in dem Array zu erhalten) Wert bekam von Schritt zwei in (int) gegossen wird und zu Gesamtwert var
- Casting (int) auf dem Gesamtwert var und es meinen Fortschrittsbalken
Bits und Stücke des Codes der Zuordnung zur Zeit aussehen dies wie:
(in main loop)
....
self.progress = Progressbar(self, orient=HORIZONTAL,length=100, mode='determinate')
global that
that = self
def progress_bar(self, progress):
progress["value"]=int(progress)
....
(in another worker thread)
....
item_count = 0
item_percent = 100/len(my_arr)
for x in my_arr:
item_count += 1
pb_percent = item_count * item_percent
pb_formatted = int(pb_formatted)
Application.progress_bar(that, int(pb_formatted))
Alles scheint mir richtig zu sein, dennoch halte ich diesen Fehler. Wenn ich die pb_formatted
var drucke, kann ich sehen, dass es das ist, was ich für die Fortschrittsleiste benötige, und ich habe auch einige if-else
Code-Blöcke laufen lassen, um zu überprüfen, ob das, was ich versuche, tatsächlich int
ist.
Was könnte das Problem sein?
Welche Zeile wirft Fehler? – amrit