Você pode usar o evento KEYDOWN
para isso porque pygame.key.get_pressed()
fornecerá resultados na velocidade do FPS atual.
Aqui está um exemplo de trabalho modificado a partir do seu código:
import pygame
import sys
from pygame.locals import *
pygame.init()
screen = pygame.display.set_mode((600,500))
myfont = pygame.font.Font(None, 60)
inp = ""
while True:
for event in pygame.event.get():
if event.type == QUIT:
sys.exit()
if event.type == pygame.KEYDOWN:
inp += event.unicode
screen.fill((0,0,200))
txt = myfont.render(inp, True, (255,255,255))
screen.blit(txt, (100,100))
pygame.display.update()
Apenas mudou isso:
- Removemos você
pygame.key.get_pressed()
call - Adicionada a verificação de evento
pygame.KEYDOWN