Int konwersja nie działa [duplikat]
To pytanie ma już odpowiedź tutaj:
Python: String nie zostanie przekonwertowany na zmiennoprzecinkowy [duplikat] 3 odpowiedziTworzę funkcję najlepszych wyników w mojej grze, ale nie mogę jej uruchomić.
Oto moja metoda:
def game_over(self):
# Game over Screen
keys = pygame.key.get_pressed()
self.gameover = pygame.image.load('resources/screen/game_over.png')
screen.blit(self.gameover,(0,0))
high_filer = open('highscores.txt', 'r')
highscore = high_filer.read()
high_filer.close()
int(highscore)
int(self.score)
print highscore + self.score
if self.score > highscore:
high_filew = open('highscores.txt', 'w')
high_filew.write(str(self.score))
high_filew.close()
if (keys[K_RETURN]):
self.state = 1
W ten sposób odczytuje najnowszy najlepszy wynik z pliku .txt i sprawdza, czy wynik gracza jest wyższy, jeśli tak, zapisuje nowy najlepszy wynik do pliku
Przekształcam ciąg zhighscore
do int za pomocąint(highscore)
wtedy i na linii 10 robięprint highscore + self.score
jako test, ale generuje błąd, który mówi, że nie mogę dodać str i int, mimo że przekonwertowałemhighscore
na int i przekonwertowałem self.score, więc z jakiegoś powodu jedna z konwersji nie zadziałała