Int conversão não está funcionando [duplicado]
Esta pergunta já tem uma resposta aqui:
Python: String não será convertida para flutuar [duplicado] 3 respostasEstou criando um recurso de alta pontuação para o meu jogo, mas não consigo fazê-lo funcionar
aqui é o meu método para isso:
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
O que ele faz é ler o recorde mais recente de um arquivo .txt e verificar se a pontuação dos jogadores é maior se for gravar o novo recorde no arquivo
Converto a string dehighscore
em um int usandoint(highscore)
então e na linha 10 eu façoprint highscore + self.score
como teste, mas ligo um erro que diz que não consigo adicionar str e int, mesmo que eu tenha convertidohighscore
para um int e converti o self.score. Por algum motivo, uma das conversões não funcionou