Python 如何在pygame中阻止对象重叠?

Python 如何在pygame中阻止对象重叠?,python,pygame,Python,Pygame,当我运行代码并按下左箭头时,宇宙飞船正在重叠/倍增。我希望该对象停止复制。代码如下: 导入pygame 导入系统 pygame.init() screen=pygame.display.set_模式((288512)) clock=pygame.time.clock() spaceship=pygame.image.load(r'C:\Users\Anonymous\Downloads\New folder\spaceship.png') x=150 y=495 spaceship_rect=s

当我运行代码并按下左箭头时,宇宙飞船正在重叠/倍增。我希望该对象停止复制。代码如下:

导入pygame
导入系统
pygame.init()
screen=pygame.display.set_模式((288512))
clock=pygame.time.clock()
spaceship=pygame.image.load(r'C:\Users\Anonymous\Downloads\New folder\spaceship.png')
x=150
y=495
spaceship_rect=spaceship.get_rect(中心=(x,y))
速度=10
尽管如此:
对于pygame.event.get()中的事件:
如果event.type==pygame.QUIT:
pygame.quit()
sys.exit()
keys=pygame.key.get_pressed()
如果键[pygame.K_LEFT]和x>0:
x-=速度
spaceship_rect=spaceship.get_rect(中心=(x,y))
屏幕。blit(宇宙飞船,宇宙飞船)
pygame.display.update()
时钟滴答(120)

在曲面上绘制的任何对象都将永久保留在该曲面上。绘制对象只会持续更改曲面中某些像素的颜色。
在绘制场景和更新显示之前,您必须清除每帧中的显示:

屏幕填充(0)
屏幕。blit(宇宙飞船,宇宙飞船)
pygame.display.update()

完整示例:

导入pygame
导入系统
pygame.init()
screen=pygame.display.set_模式((288512))
clock=pygame.time.clock()
spaceship=pygame.image.load(r'C:\Users\Anonymous\Downloads\New folder\spaceship.png')
x=150
y=495
spaceship_rect=spaceship.get_rect(中心=(x,y))
速度=10
尽管如此:
对于pygame.event.get()中的事件:
如果event.type==pygame.QUIT:
pygame.quit()
sys.exit()
keys=pygame.key.get_pressed()
如果键[pygame.K_LEFT]和x>0:
x-=速度
spaceship_rect=spaceship.get_rect(中心=(x,y))
屏幕填充(0)
屏幕。blit(宇宙飞船,宇宙飞船)
pygame.display.update()
时钟滴答(120)

在曲面上绘制的任何对象都将永久保留在该曲面上。绘制对象只会持续更改曲面中某些像素的颜色。
在绘制场景和更新显示之前,您必须清除每帧中的显示:

屏幕填充(0)
屏幕。blit(宇宙飞船,宇宙飞船)
pygame.display.update()

完整示例:

导入pygame
导入系统
pygame.init()
screen=pygame.display.set_模式((288512))
clock=pygame.time.clock()
spaceship=pygame.image.load(r'C:\Users\Anonymous\Downloads\New folder\spaceship.png')
x=150
y=495
spaceship_rect=spaceship.get_rect(中心=(x,y))
速度=10
尽管如此:
对于pygame.event.get()中的事件:
如果event.type==pygame.QUIT:
pygame.quit()
sys.exit()
keys=pygame.key.get_pressed()
如果键[pygame.K_LEFT]和x>0:
x-=速度
spaceship_rect=spaceship.get_rect(中心=(x,y))
屏幕填充(0)
屏幕。blit(宇宙飞船,宇宙飞船)
pygame.display.update()
时钟滴答(120)

无法复制代码,while循环不能为空。请修复缩进您需要在while中更新屏幕。无法复制代码,while循环不能为空。请修复您的缩进。您需要在while中更新屏幕。