Pygame 运行中途卡顿

为什么我使用Pygame时,运行中间有卡顿现象?

只是运行中途,飞船刚刚开始转向或前进的时候会有卡顿,过了一会就不卡了。

我使用了这些代码,可能是他们的问题。

timer = pygame.time.Clock()
timer.tick(tick)
pygame.display.flip()

这是程序中记录的卡顿现象
格式:(帧数,飞船速度)
如果还需要其他数据,请在评论区留言

(61, 1.6)
(61, 1.6)
(61, 1.6)
(61, 1.6)
(61, 1.7)
(61, 1.7)
(61, 1.7)
(61, 1.7)
(61, 1.7)
(61, 1.8)
(61, 1.8)
(53, 1.8)
(53, 1.8)
(53, 1.8)
(53, 1.9)
(53, 1.9)
(53, 1.9)
(53, 1.9)
(53, 1.9)
(53, 2.0)
(53, 2.0)
(35, 2.0)
(35, 2.0)
(35, 2.0)
(35, 2.1)
(35, 2.1)
(35, 2.1)
(35, 2.1)
(35, 2.1)
(35, 2.2)
(35, 2.2)
(7, 2.2)
(7, 2.2)
(7, 2.2)
(7, 2.3)
(7, 2.3)
(7, 2.3)
(7, 2.3)
(7, 2.3)
(7, 2.4)
(7, 2.4)
(21, 2.4)
(21, 2.4)
(21, 2.4)
(21, 2.5)
(21, 2.5)
(21, 2.5)
(21, 2.5)
(21, 2.5)
(21, 2.6)
(21, 2.6)
(61, 2.6)
(61, 2.6)
(61, 2.6)
(61, 2.7)
(61, 2.7)
(61, 2.7)
(61, 2.7)
(61, 2.7)
(61, 2.8)
(61, 2.8)
(61, 2.8)

可能1:你的电脑不好。
可能2:因为我看不到完整代码,所以我不知道你把timer = pygame.time.Clock()这行代码写在了什么地方。不要把这行代码写在while循环中,而应该写在外面。tick要写在循环里面。
可能3:不要使用pygame.display.flip()而使用pygame.display.update()。flip方法会刷新整个屏幕,update只会刷新更改过的部分,所以update会快一些。
可能4:在for event in pygame.event.get()里面使用了大量的if...if...if...结构而不是if...elif...elif...结构判断事件的类型。if...是继续运行的,所以可能会卡