Seite 1 von 1
Wieso bekomme ich diesen Fehler und wie behebe ich ihn?
Verfasst: Montag 19. Oktober 2020, 16:58
von anonym96
Hallo ich bin noch nicht so erfahren beim Dateien auslesen und in Dateien schreiben
Ich bin gerade dabei das die Punkte jeder Runde am Ende auf die Punkte in der Json drauf gerechnet bzw abgezogen werden.
Am Anfang sollen diese Punkte auf null stehen in der JSON
Code: Alles auswählen
with open ("score.json","w","r")as f:
data = json.load(f.read())
data.score += self.punktzahl
json.dump(data,f,indent=4,separators=(",",":"),sort_keys=True)
Bekomme nur diesen Fehler an integer is required (got type str).
Also er will eine int bekommt aber ein string.
Jetzt weiß nur nicht warum denn self.punktzahl ist eine int
Kann mir jemand bitte helfen?
Danke
Re: Wieso bekomme ich diesen Fehler und wie behebe ich ihn?
Verfasst: Montag 19. Oktober 2020, 17:06
von Sirius3
Wenn schon eine Fehlermeldung kommt, dann post den gesamten Traceback. So weiß doch kein Mensch, wo der Fehler auftritt.
Du kannst keine Textdatei gleichzeitig zum Lesen und Schreiben öffnen, das mußt Du nacheinander machen.
`json.load` erwartet ein Fileobjekt. `data` ist sicher kein Objekt, das ein score-Attribut hat.
Re: Wieso bekomme ich diesen Fehler und wie behebe ich ihn?
Verfasst: Montag 19. Oktober 2020, 17:13
von anonym96
Sirius3 hat geschrieben: Montag 19. Oktober 2020, 17:06
Wenn schon eine Fehlermeldung kommt, dann post den gesamten Traceback. So weiß doch kein Mensch, wo der Fehler auftritt.
Du kannst keine Textdatei gleichzeitig zum Lesen und Schreiben öffnen, das mußt Du nacheinander machen.
`json.load` erwartet ein Fileobjekt. `data` ist sicher kein Objekt, das ein score-Attribut hat.
Code: Alles auswählen
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\lib\tkinter\__init__.py", line 1705, in __call__
return self.func(*args)
File "C:\Users\glint\source\repos\Multiquiz\Screens\Geschichtescreendatei.py", line 112, in gibUnsEineFrage
with open ("score.json","w","r")as f:
TypeError: an integer is required (got type str)
Das Fileobjekt is score.json das ist die Datei
Re: Wieso bekomme ich diesen Fehler und wie behebe ich ihn?
Verfasst: Montag 19. Oktober 2020, 17:24
von Sirius3
Bei diesem Post, weiß ich jetzt nicht, ob Du meine Antwort gelesen und verstanden hast, oder nicht: `open` braucht einen Filemode und nicht zwei.
Re: Wieso bekomme ich diesen Fehler und wie behebe ich ihn?
Verfasst: Montag 19. Oktober 2020, 17:28
von anonym96
Sirius3 hat geschrieben: Montag 19. Oktober 2020, 17:24
Bei diesem Post, weiß ich jetzt nicht, ob Du meine Antwort gelesen und verstanden hast, oder nicht: `open` braucht einen Filemode und nicht zwei.
Habe ich schon verstanden.
Davor bekam ich aber ein unreadable Fehler.
Was daran lag das es writeonly war. Da dachte ich es brauch auch noch r